Age | Commit message (Collapse) | Author |
|
|
|
members to 64bit types. Assign new syscall numbers for (almost
all) the syscalls that involve the affected types, including anything
with time_t, timeval, itimerval, timespec, rusage, dirent, stat,
or kevent arguments. Add a d_off member to struct dirent and replace
getdirentries() with getdents(), thus immensely simplifying and
accelerating telldir/seekdir. Build perl with -DBIG_TIME.
Bump the major on every single base library: the compat bits included
here are only good enough to make the transition; the T32 compat
option will be burned as soon as we've reached the new world are
are happy with the snapshots for all architectures.
DANGER: ABI incompatibility. Updating to this kernel requires extra
work or you won't be able to login: install a snapshot instead.
Much assistance in fixing userland issues from deraadt@ and tedu@
and build assistance from todd@ and otto@
|
|
for ddb to show both. So or them together in the ps overview and
list them explicitly for the specific thread. Also sync the ddb
bit names with the define names.
OK miod@
|
|
tested on vax (gcc3) ok miod@
|
|
ok kettenis@ mpi@ deraadt@ millert@ miod@ matthew@ beck@
|
|
They scroll away the important information. Disable splassert in
panic().
OK deraadt@ uebayasi@ sthen@
|
|
|
|
pointed out by Artturi Alm (artturi.alm (at) gmail.com)
|
|
on Theo's servers - however this was in the context of the buffer flipper
changes and this is now suspect in a continues performance issue with NFS
so back it out for now
|
|
ok guenther@
|
|
will come back soon.
ok deraadt@
|
|
|
|
|
|
f_count is long
ok kettenis@
Change esm_sensor_map.arg to int
ok deraadt@
|
|
this is necessary to enable -Wformat or -Wno-error=format
ok deraadt@
|
|
this also adds support in gcc 4.x kprintf format checks
ok kettenis@
|
|
2038. This'll last for another 4083 years or so...
ok deraadt@
|
|
ok deraadt@
|
|
check and awaken B_WANTED sleepers when clearing B_BUSY.
ok guenther@
|
|
ok miod@
|
|
to cheat and VOP_BWRITE a buffer, restart the vinvalbuf if we have to wait
for a busy buffer to complete
ok tedu@ guenther@
|
|
including CLOCK_{PROCESS,THREAD}_CPUTIME_ID constants and
{clock,pthread}_getcpuclockid() functions.
Worked out at t2k13 with help from tedu@ and matthew@ and testing by aja@
ok matthew@
|
|
undo style changes.
|
|
|
|
This change splits the buffer cache free lists into lists of dma reachable
buffers and high memory buffers based on the ranges returned by pmemrange.
Buffers move from dma to high memory as they age, but are flipped to dma
reachable memory if IO is needed to/from and high mem buffer. The total
amount of buffers allocated is now bufcachepercent of both the dma and
the high memory region.
This change allows the use of large buffer caches on amd64 using more than
4 GB of memory
ok tedu@ krw@ - testing by many.
|
|
test period; i think 3 years ago the last bugs fell out.
ok otto beck others
|
|
memory we're copying between is guaranteed to be non-overlapping
since the target is newly allocated.
ok kettenis@ henning@ tedu@
|
|
ok kettenis
|
|
m_foo functions that return errors are now consistent as far as i can tell.
ok bluhm@
|
|
for big time_t and casting to long long
ok deraadt@
|
|
|
|
|
|
ok matthew@ millert@
|
|
|
|
There is a race condition which might trigger a case where two cpus try
to run the same idle thread.
The problem arises when one cpu steals the idle proc of another cpu and
this other cpu ends up running the idle thread via spc->spc_idleproc,
resulting in two cpus trying to cpu_switchto(idleX).
On startup, idle procs are scaterred around different runqueues, the
decision for scheduling is:
1 look at my runqueue.
2 if empty, look at other dudes runqueue.
3 if empty, select idle proc via spc->spc_idleproc.
The problem is that cpu0's idle0 might be running on cpu1 due to step 1
or 2 and cpu0 hits step 3.
So cpu0 will select idle0, while cpu1 is in fact running it already.
The solution is to never place idle on a runqueue, therefore being
only selectable through spc->spc_idleproc.
This race can be more easily triggered on a HT cpu on virtualized
environments, where the guest more often than not doesn't have the cpu
for itself, so timing gets shuffled.
ok tedu@ guenther@
go ahead after t2k13 deraadt@
|
|
O_* flags and eliminating an XXX comment.
ok matthew@ deraadt@
|
|
exited pids that won't get recycled.
ok deraadt
|
|
ok deraadt
|
|
until it's fully built, so that it can't get a signal from
realitexpire(), as seen by sthen@ and espie@ in ports builds.
Exact bits moved down worked out with tedu@, ok deraadt@
|
|
ok matthew@ deraadt@
|
|
from Sylvestre Gallon ccna.syl gmail.com
|
|
ok deraadt@
|
|
|
|
it's now atomic_lock to better reflect its usage, and librthread now
features a new spinlock that's really a ticket lock.
thrlseep can handle both types of lock via a flag in the clock arg.
(temp back compat hack)
remove some old stuff that's accumulated along the way and no longer used.
some feedback from dlg, who is concerned with all things ticket lock.
(you need to boot a new kernel before installing librthread)
|
|
stacks by not returning (ever) from hibernate_unpack_image.
|
|
distinguish one failure path from another. Comment the same.
Also removed some extraneous comments regarding pmap_activate.
|
|
|
|
ok guenther matthew
|
|
with threaded processes. Fix this by checking for an attempt to go
single threaded in fork1 and account for the new thread as well.
ok espie guenther kurt
|
|
|