created | 2019-12-16T18:25:37Z |
---|---|
begin | 2019-12-12T00:00:00Z |
end | 2019-12-13T00:00:00Z |
path | src/sys |
commits | 9 |
date | 2019-12-12T11:12:36Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_extern.h | log | diff | annotate |
src/sys/uvm/uvm_map.c | log | diff | annotate | |
message |
Header cleanup. - reduces gratuitous differences with NetBSD, - merges multiple '#ifdef _KERNEL' blocks, - kills unused 'struct vm_map_intrsafe' - turns 'union vm_map_object' into a anonymous union (following to NetBSD) - move questionable vm_map_modflags() into uvm/uvm_map.c - remove guards around MAX_KMAPENT, it is defined&used only once - document lock differences - fix tab vs space ok mlarkin@, visa@ |
date | 2019-12-12T11:12:37Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_map.h | log | diff | annotate |
message |
Header cleanup. - reduces gratuitous differences with NetBSD, - merges multiple '#ifdef _KERNEL' blocks, - kills unused 'struct vm_map_intrsafe' - turns 'union vm_map_object' into a anonymous union (following to NetBSD) - move questionable vm_map_modflags() into uvm/uvm_map.c - remove guards around MAX_KMAPENT, it is defined&used only once - document lock differences - fix tab vs space ok mlarkin@, visa@ |
date | 2019-12-12T13:09:35Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/arch/amd64/stand/efiboot/exec_i386.c | log | diff | annotate |
message |
On a HP EliteBook 830 G6 the Computrace executable is located in the area where the boot loader copies the kernel. Its EfiLoaderCode is write protected, so the boot loader hangs in memmove(). As we may use this memory after calling EFI ExitBootServices(), change the protection bit to writeable in the page table. OK deraadt@ mlarkin@ patrick@ |
date | 2019-12-12T15:55:36Z | |||
---|---|---|---|---|
author | visa | |||
files | src/sys/sys/stdarg.h | log | diff | annotate |
message |
Unhook compilers that OpenBSD provides have builtins for vararg routines and use the machine-independent definitions in Input from miod@ OK millert@ |
date | 2019-12-12T16:31:06Z | |||
---|---|---|---|---|
author | visa | |||
files | src/sys/kern/kern_event.c | log | diff | annotate |
src/sys/sys/event.h | log | diff | annotate | |
message |
Allow sleeping inside kqueue event filters. In kqueue_scan(), threads have to get an exclusive access to a knote before processing by calling knote_acquire(). This prevents the knote from being destroyed while it is still in use. knote_acquire() also blocks other threads from processing the knote. Once knote processing has finished, the thread has to call knote_release(). The kqueue subsystem is still serialized by the kernel lock. If an event filter sleeps, the kernel lock is released and another thread might enter kqueue_scan(). kqueue_scan() uses start and end markers to keep track of the scan's progress and it has to be aware of other threads' markers. This patch is a revised version of mpi@'s work derived from DragonFly BSD. kqueue_check() has been adapted from NetBSD. Tested by anton@, sashan@ OK mpi@, anton@, sashan@ |
date | 2019-12-12T16:33:02Z | |||
---|---|---|---|---|
author | visa | |||
files | src/sys/kern/uipc_socket.c | log | diff | annotate |
src/sys/miscfs/fifofs/fifo_vnops.c | log | diff | annotate | |
src/sys/sys/socketvar.h | log | diff | annotate | |
message |
Reintroduce socket locking inside socket event filters. Tested by anton@, sashan@ OK mpi@, anton@, sashan@ |
date | 2019-12-12T17:52:25Z | |||
---|---|---|---|---|
author | cheloha | |||
files | src/sys/kern/kern_tc.c | log | diff | annotate |
message |
Recommit "tc_windup: separate timecounter.tc_freq_adj from timehands.th_adjustment" Reverted with backout of tickless timeouts. Original commit message: We currently mix timecounter.tc_freq_adj and timehands.th_adjtimedelta in ntp_update_second() to produce timehands.th_adjustment, our net skew. But if you set a low enough adjfreq(2) adjustment you can freeze time. This prevents ntp_update_second() from running again. So even if you then set a sane adjfreq(2) you cannot unfreeze time without rebooting. If we just reread timecounter.tc_freq_adj every time we recompute timehands.th_scale we avoid this trap. visa@ notes that this is more costly than what we currently do but that the cost itself is negligible. Intuitively, timecounter.tc_freq_adj is a constant skew and should be handled separately from timehands.th_adjtimedelta, an adjustment that we chip away at very slowly. tedu@ notes that this problem is sort-of an argument for imposing range limits on adjfreq(2) inputs. He's right, but I think we should still separate the counter adjustment from the adjtime(2) adjustment, with or without range limits. ok visa@ |
date | 2019-12-12T18:12:43Z | |||
---|---|---|---|---|
author | cheloha | |||
files | src/sys/kern/kern_timeout.c | log | diff | annotate |
message |
Recommit "timeout(9): make CIRCQ look more like other sys/queue.h data structures" Backed out during revert of "timeout(9): switch to tickless backend". Original commit message: - CIRCQ_APPEND -> CIRCQ_CONCAT - Flip argument order of CIRCQ_INSERT to match e.g. TAILQ_INSERT_TAIL - CIRCQ_INSERT -> CIRCQ_INSERT_TAIL - Add CIRCQ_FOREACH, use it in ddb(4) when printing buckets - While here, use tabs for indentation like we do with other macros ok visa@ mpi@ |
date | 2019-12-12T19:30:21Z | |||
---|---|---|---|---|
author | cheloha | |||
files | src/sys/kern/kern_tc.c | log | diff | annotate |
message |
tc_setclock: reintroduce timeout_adjust_ticks() call Missing piece of tickless timeout revert. |