Age | Commit message (Collapse) | Author |
|
setitimer(2) works with timespecs in its critical section. It will be
easier to merge the two critical sections if getitimer(2) also works
with timespecs.
In particular, we currently read the uptime clock *twice* during a
setitimer(2) swap: we call getmicrouptime(9) in sys_getitimer() and
then call getnanouptime(9) in sys_setitimer(). This means that
swapping one timer in for another is not atomic with respect to the
uptime clock. It also means the two operations are working with
different time structures and resolutions, which is potentially
confusing.
If both critical sections work with timespecs we can combine the two
getnanouptime(9) calls into a single call at the start of the combined
critical section in a future patch, making the swap atomic with
respect to the clock.
So, in preparation, move the TIMESPEC_TO_TIMEVAL conversions in
getitimer(2) after the ITIMER_REAL conversion from absolute to
relative time, just before copyout(9). The ITIMER_REAL conversion
must then be done with timespec macros and getnanouptime(9), just like
in setitimer(2).
|
|
If we're replacing the current ITIMER_REAL timer with a new one we
don't need to call timeout_del(9) before calling timeout_add(9).
timeout_add(9) does the work of timeout_del(9) implicitly if the
timeout in question is already pending.
This saves us an extra trip through the timeout_mutex.
|
|
Reuse the kev[] array of sys_kevent() in kqueue_scan() to lower
stack usage.
The code has reset kevp, but not nkev, whenever the retry branch is
taken. However, the resetting is unnecessary because retry should be
taken only if no events have been collected. Make this clearer by
adding KASSERTs.
OK mpi@
|
|
count them because `if_snd' does this.
ok yasuoka@
|
|
Reading the disabled bios on two Dell machines with RV610
passes initial checks but later fails atombios specific checks.
This occurs when running amd64 but not i386.
Returning early when reading the disabled bios will result in calling
radeon_read_platform_bios() and using the bios at 0xc0000 which works
for both systems this was reported for
semarie@ on Dell OptiPlex 755
RV610 0x1002:0x94C3 0x1028:0x0402 0x00
Andy Bradford on Dell DXP051
RV610 0x1002:0x94C1 0x1028:0x0D02 0x00
|
|
From Sam Ravnborg
cea0a7943a30a6d0320c8558a844dd27e8f0aa8b in linux 5.7.y/5.7.15
2a1658bf922ffd9b7907e270a7d9cdc9643fc45d in mainline linux
|
|
|
|
pfsyncstart() does not require the big lock, make it use the ifq API.
OK mvs
|
|
Hints from kettenis@, ok kettenis@ deraadt@
|
|
Rearrange the critical section in setitimer(2) to match that of
getitimer(2). This will make it easier to merge the two critical
sections in a subsequent diff.
In particular, we want to write the new timer value in *one* place in
the code, regardless of which timer we're setting.
ok millert@
|
|
in the received message.
ok patrick@
|
|
When record protection is engaged, the plaintext must be followed by a
non-zero content type and optional zero padding. If the plaintext is zero
length or only consists of zero bytes then it is not a valid message,
since the content type is unspecified.
ok tb@
|
|
ok inoguchi@ tb@
|
|
ok inoguchi@ tb@
|
|
ok inoguchi@ tb@
|
|
The error path does the same as the currently duplicated code.
ok inoguchi@ tb@
|
|
For what are probably historical reasons, setitimer(2) does not
validate its input (itv) immediately after copyin(9). Instead, it
waits until after (possibly) performing a getitimer(2) to copy out the
state of the timer.
Consolidating copyin(9), input validation, and input conversion into a
single block before the getitimer(2) operation makes setitimer(2)
itself easier to read. It will also simplify merging the critical
sections of setitimer(2) and getitimer(2) in a subsequent patch.
This changes setitimer(2)'s behavior in the EINVAL case. Currently,
if your input (itv) is invalid, we return EINVAL *after* modifying the
output (olditv). With the patch we will now return EINVAL *before*
modifying the output. However, any code dependent upon this behavior
is broken: the contents of olditv are undefined in all setitimer(2)
error cases.
ok millert@
|
|
|
|
The ITIMER_REAL per-process interval timer is protected by the kernel
lock. The ITIMER_REAL timeout (ps_realit_to), setitimer(2), and
getitimer(2) all run under the kernel lock. Entering itimer_mtx
during getitimer(2) when reading the ITIMER_REAL ps_timer state is
superfluous and misleading.
|
|
it.
Prepares for removal of #include <scsi/scsi_debug.h> from scsiconf.h as soon as
the alpha tester digs out from hurricane to compile last untested files.
|
|
The ITIMER_REAL itimerspec (ps_timer[0]) and timeout (ps_realit_to)
are protected by the kernel lock. Annotate them with "K".
The ITIMER_VIRTUAL and ITIMER_PROF itimerspecs (ps_timer[1],
ps_timer[2]) are protected by itimer_mtx. Annotate them with "T",
for "timer".
With input from kettenis@ and anton@.
ok kettenis@, anton@
|
|
|
|
keys in addition to its current flag options. Time-limited keys will
automatically be removed from ssh-agent after their expiry time has
passed; ok markus@
|
|
respect $SSH_ASKPASS_REQUIRE; ok markus@
|
|
of fixes and a few new APIs that we'd like to use in OpenSSH
ok deraadt@
|
|
was right that this isn't really needed. Now the list is the same as what
we had for the previous compiler-rt version.
|
|
Restore them to their previous values.
|
|
|
|
|
|
From sxvghd (at) firemail (dot) cc, on tech@
|
|
|
|
ok kettenis@
|
|
ok kettenis@
|
|
ok kettenis@
|
|
ok kettenis@
|
|
|
|
ok patrick@
|
|
If a peer sends a bogus record consisting of all-zero plaintext,
the content_len would be decremented to -1 and cause a crash in
freezero.
ok inoguchi jsing
|
|
system would deadlock when a CPU gets blocked by the mutex while another
CPU is waiting for the first CPU to finish a rendezvous request.
This possibly fixes some hangs on sgi. There should be no effect on
loongson and octeon because their interrupt code is sloppy with masking
of IPIs.
While here, rename the rendezvous mutex to better reflect its use.
|
|
This is the lib/builtin directory of the compiler-rt source tarball.
comments/ok patrick@, ok kettenis@
|
|
|
|
nestled together. Rename scsibusprint() to scsibussubprint() since it is used
with scsibussubmatch().
|
|
simplifications, add missing markup, and break an overlong line
|
|
packets output out of KERNEL_LOCK. pppac(4) and pipex(4) are ready to
this.
ok yasuoka@
|
|
main needs to understand the kstat_tree type now, so move the
declaration up.
|
|
|
|
ok kn@
|
|
This is the documented behaviour which was changed by pedro in rev 1.81
which was partially backed out in rev 1.82.
|
|
reverts changes from msdosfs_vfsops.c rev 1.7
Prompted by a patch from John Carmack to add an an error path when exFAT
is detected on mount to give a more helpful error message.
Returning EINVAL in the existing sanity checks will make mount_msdos(8)
print "not an MSDOS filesystem" when attempting to mount exFAT and
matches historic and documented behaviour.
ok kn@
|
|
the ci_acpicpudev pointer in struct cpu_info. This simplifies matters
when we have lots of cpus.
ok kettenis@
|