| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
- define LINUX_LARGEFILE64 to use rlimit instead of orlimit.
|
|
different naming conventions from netbsd's machine[] or machine_arch[]
("earmv7", "aarch64", etc.) and cannot be used as is.
Instead, use define LINUX_GO_RT0_SIGNATURE_ARCH{32,64}.
|
|
it is now defined in each arch same as the other *_SIGNATURE definitions.
- add new LINUX32_GO_RT0_SIGNATURE for compat_linux32, and is defined in amd64 and aarch64.
|
|
|
|
|
|
|
|
- The AT_EMPTY_PATH processing from the modification of
sys/compat/linux/common/linux_file64.c r1.63 has been separated, and made
common to linux_statat(), so that it can be used not only by
linux32_sys_fstatat64() but also by other *statat() variants.
|
|
There is a static function with the same name in linux/common/linux_file.c.
NFC.
|
|
There is a static function with the same name in linux/common/linux_file.c.
NFC.
|
|
|
|
|
|
|
|
These ioctls were declared in linux_termios.h but were not actually
handled.
|
|
newer standardized name. NFC.
|
|
|
|
|
|
|
|
|
|
|
|
This is required for rtld shipped with glibc 2.33.
Now, userland of Fedora 34 is working fine on NetBSD/amd64.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
timer_getoverrun(), and timer_delete()) to COMPAT_LINUX and COMPAT_LINUX32.
|
|
contains a pointer. Correct this.
- Add routines to convert from Linux to native sigevent_t.
|
|
Just in case of uninitialized padding which would lead to kernel
stack disclosure. If the compiler can prove the memset redundant
then it can optimize it away; otherwise better safe than sorry.
|
|
|
|
|
|
than fiddling with process timers directly.
|
|
|
|
Linux is less strict than NetBSD and permits namelen to be larger
than valid struct sockaddr_in*. If this is the case, truncate the value
to the correct size, so that NetBSD networking does not return an error.
Reviewed by kamil
|
|
|
|
The poorly named uvm.h is generally supposed to be for uvm-internal
users only.
- Narrow it to files that actually need it -- mostly files that need
to query whether curlwp is the pagedaemon, which should maybe be
exposed by an external header.
- Use uvm_extern.h where feasible and uvm_*.h for things not exposed
by it. We should split up uvm_extern.h but this will serve for now
to reduce the uvm.h dependencies.
- Use uvm_stat.h and #ifdef UVMHIST uvm.h for files that use
UVMHIST(ubchist), since ubchist is declared in uvm.h but the
reference evaporates if UVMHIST is not defined, so we reduce header
file dependencies.
- Make uvm_device.h and uvm_swap.h independently includable while
here.
ok chs@
|
|
unmaintained, which broke FP status info in the COMPAT_LINUX sigcontext.
Use the new API, which will at least be closer to correct.
|
|
|
|
Reported-by: syzbot+e71a77402d6668f1868d@syzkaller.appspotmail.com
|
|
- Don't need to count anonpages+filepages any more; clean+unknown+dirty for
each kind of page can be summed to get the totals.
- Track the number of free pages with a counter so that it's one less thing
for the allocator to do, which opens up further options there.
- Remove cpu_count_sync_one(). It has no users and doesn't save a whole lot.
For the cheap option, give cpu_count_sync() a boolean parameter indicating
that a cached value is okay, and rate limit the updates for cached values
to hz.
|
|
cached value will do, or if the very latest total must be fetched. It can
be called thousands of times a second and fetching the totals impacts not
only the calling LWP but other CPUs doing unrelated activity in the VM
system.
|
|
at the time we had mutex_obj_alloc() but not __cacheline_aligned.
|
|
For linux_sys_sched_setaffinity, pid == 0 means the current thread.
On the other hand, for our native sys_sched_setaffinity, lid == 0
means all lwp's that belong to the process.
|
|
exist in different namespace depending on FUTEX_PRIVATE_FLAG. This appears
not to be the case in Linux, and some futex users will mix private and non-
private ops on the same futex object. Provide a convenience wrapper that
puts this logic in one place witn a comment explaining why.
While here, move the Linux futex wrapper out of its own file and plop
it in linux_misc.c, which is where it lives in the linux32 module.
|
|
|
|
and linux_sys_sched_setaffinity(). They were incorrect even before
the LWP ID changes, but those changes exposed the latent bugs.
|