<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/amd64/linux/linux_sysvec.c, branch releng/12.2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F12.2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F12.2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2020-08-24T17:06:34Z</updated>
<entry>
<title>MFC r347538 by dchagin:</title>
<updated>2020-08-24T17:06:34Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2020-08-24T17:06:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1400a5d9086e287a91c47aef3f08320562ce3c77'/>
<id>urn:sha1:1400a5d9086e287a91c47aef3f08320562ce3c77</id>
<content type='text'>
Linuxulator depends on a fundamental kernel settings such as SMP. Many
of them listed in opt_global.h which is not generated while building
modules outside of a kernel and such modules never match real cofigured
kernel.

So, we should prevent our users from building obviously defective modules.

Therefore, remove the root cause of the building of modules outside of a
kernel - the possibility of building modules with DEBUG or KTR flags.
And remove all of DEBUG printfs as it is incomplete and in threaded
programms not informative, also a half of system call does not have DEBUG
printf. For debuging Linux programms we have dtrace, ktr and ktrace ability.

PR:		222861
</content>
</entry>
<entry>
<title>MFC r353725 by yuripv:</title>
<updated>2020-08-23T21:48:57Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2020-08-23T21:48:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e97be8305dc65e2b4457f5ea811567dd0f1a778b'/>
<id>urn:sha1:e97be8305dc65e2b4457f5ea811567dd0f1a778b</id>
<content type='text'>
linux: futex_mtx should follow futex_list

Move futex_mtx to linux_common.ko for amd64 and aarch64 along
with respective list/mutex init/destroy.

PR:		240989
Reported by:	Alex S &lt;iwtcex@gmail.com&gt;
</content>
</entry>
<entry>
<title>MFC r355818:</title>
<updated>2020-08-23T20:25:10Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2020-08-23T20:25:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c60baa9537e59c8aa1655def075a8bb11de99f93'/>
<id>urn:sha1:c60baa9537e59c8aa1655def075a8bb11de99f93</id>
<content type='text'>
Add compat.linux.emul_path, so it can be set to something other
than "/compat/linux".  Useful when you have several compat directories
with different Linux versions and you don't want to clash with files
installed by linux-c7 packages.

Sponsored by:	The FreeBSD Foundation
</content>
</entry>
<entry>
<title>MFC r351783:</title>
<updated>2020-08-15T17:02:23Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2020-08-15T17:02:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f1afb70c40fa2d7880df9906b0811e016fed51a3'/>
<id>urn:sha1:f1afb70c40fa2d7880df9906b0811e016fed51a3</id>
<content type='text'>
Unbreak Linux binaries linked against new glibc, such as the ones
from recent Ubuntu versions.  Without it they segfault on startup.

Sponsored by:	The FreeBSD Foundation
</content>
</entry>
<entry>
<title>MFC r361664:</title>
<updated>2020-06-07T17:40:29Z</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2020-06-07T17:40:29Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b7b6ae7beddf6a2ce71505d4e7545f2670bf689d'/>
<id>urn:sha1:b7b6ae7beddf6a2ce71505d4e7545f2670bf689d</id>
<content type='text'>
Handle getcpu() calls in vsyscall emulation on amd64.

PR:	246339
</content>
</entry>
<entry>
<title>MFC r344705:</title>
<updated>2019-05-14T19:52:18Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2019-05-14T19:52:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=afae2f438329ce0dd45833165c1a96f5a50a0894'/>
<id>urn:sha1:afae2f438329ce0dd45833165c1a96f5a50a0894</id>
<content type='text'>
Remove sv_pagesize, originally introduced with r100384.

In all of the architectures we have today, we always use PAGE_SIZE.
While in theory one could define different things, none of the
current architectures do, even the ones that have transitioned from
32-bit to 64-bit like i386 and arm. Some ancient mips binaries on
other systems used 8k instead of 4k, but we don't support running
those and likely never will due to their age and obscurity.

Differently from the original commit, the merge leaves the struct
member in place to preserve the ABI.

Sponsored by:	DARPA, AFRL
</content>
</entry>
<entry>
<title>Fix the Linux kernel version number calculation</title>
<updated>2018-06-22T00:02:03Z</updated>
<author>
<name>Chuck Tuffli</name>
<email>chuck@FreeBSD.org</email>
</author>
<published>2018-06-22T00:02:03Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3575504976b2df6dd75e383f19d609d9385490f2'/>
<id>urn:sha1:3575504976b2df6dd75e383f19d609d9385490f2</id>
<content type='text'>
The Linux compatibility code was converting the version number (e.g.
2.6.32) in two different ways and then comparing the results.

The linux_map_osrel() function converted MAJOR.MINOR.PATCH similar to
what FreeBSD does natively. I.e. where major=v0, minor=v1, and patch=v2
    v = v0 * 1000000 + v1 * 1000 + v2;

The LINUX_KERNVER() macro, on the other hand, converted the value with
bit shifts. I.e. where major=a, minor=b, and patch=c
    v = (((a) &lt;&lt; 16) + ((b) &lt;&lt; 8) + (c))

The Linux kernel uses the later format via the KERNEL_VERSION() macro in
include/generated/uapi/linux/version.h

Fix is to use the LINUX_KERNVER() macro in linux_map_osrel() as well as
in the .trans_osrel functions.

PR: 229209
Reviewed by: emaste, cem, imp (mentor)
Approved by: imp (mentor)
Differential Revision: https://reviews.freebsd.org/D15952
</content>
</entry>
<entry>
<title>linuxolator/amd64: Don't mangle %r10 on return from syscall for EJUSTRETURN.</title>
<updated>2018-06-14T12:35:57Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2018-06-14T12:35:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=459ccd3c5f954d23153c0c637710b0c68458c7dd'/>
<id>urn:sha1:459ccd3c5f954d23153c0c637710b0c68458c7dd</id>
<content type='text'>
This fixes the %r10 content for rt_sigreturn.

Submitted by:	Yanko Yankulov &lt;yanko.yankulov@gmail.com&gt;
MFC after:	1 week
</content>
</entry>
<entry>
<title>Correct pointer subtraction in KASSERT().</title>
<updated>2018-05-29T20:03:24Z</updated>
<author>
<name>Brooks Davis</name>
<email>brooks@FreeBSD.org</email>
</author>
<published>2018-05-29T20:03:24Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=cbf7e0cba7d47c20c73122e8dbefb98bf89fedad'/>
<id>urn:sha1:cbf7e0cba7d47c20c73122e8dbefb98bf89fedad</id>
<content type='text'>
The assertion would never fire without truly spectacular future
programming errors.

Reported by:	Coverity
CID:		1391370
Sponsored by:	DARPA, AFRL
</content>
</entry>
<entry>
<title>Avoid two suword() calls per auxarg entry.</title>
<updated>2018-05-24T16:25:18Z</updated>
<author>
<name>Brooks Davis</name>
<email>brooks@FreeBSD.org</email>
</author>
<published>2018-05-24T16:25:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5f77b8a88b5e22cb5068f2e8d3ab3518634b1f45'/>
<id>urn:sha1:5f77b8a88b5e22cb5068f2e8d3ab3518634b1f45</id>
<content type='text'>
Instead, construct an auxargs array and copy it out all at once.

Use an array of Elf_Auxinfo rather than pairs of Elf_Addr * to represent
the array. This is the correct type where pairs of words just happend
to work. To reduce the size of the diff, AUXARGS_ENTRY is altered to act
on this array rather than introducing a new macro.

Return errors on copyout() and suword() failures and handle them in the
caller.

Incidentally fixes AT_RANDOM and AT_EXECFN in 32-bit linux on amd64
which incorrectly used AUXARG_ENTRY instead of AUXARGS_ENTRY_32
(now removed due to the use of proper types).

Reviewed by:	kib
Comments from:	emaste, jhb
Obtained from:	CheriBSD
Sponsored by:	DARPA, AFRL
Differential Revision:	https://reviews.freebsd.org/D15485
</content>
</entry>
</feed>
