summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-08-12getitimer(2): delay TIMESPEC_TO_TIMEVAL(9) conversion until copyout(9)cheloha
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).
2020-08-12setitimer(2): ITIMER_REAL: don't call timeout_del(9) before timeout_add(9)cheloha
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.
2020-08-12Reduce stack usage of kqueue_scan()Visa Hankala
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@
2020-08-12Remove interface statistics update for outgoing packets. We shouldn'tmvs
count them because `if_snd' does this. ok yasuoka@
2020-08-12skip trying to read disabled bios on RV610Jonathan Gray
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
2020-08-12drm/drm_fb_helper: fix fbdev with sparc64Jonathan Gray
From Sam Ravnborg cea0a7943a30a6d0320c8558a844dd27e8f0aa8b in linux 5.7.y/5.7.15 2a1658bf922ffd9b7907e270a7d9cdc9643fc45d in mainline linux
2020-08-12ssh-keyscan(1): simplify conloop() with timercmp(3), timersub(3); ok djm@cheloha
2020-08-11Run start routing without KERNEL_LOCK()kn
pfsyncstart() does not require the big lock, make it use the ifq API. OK mvs
2020-08-11clang 10 now emits calls to __multi3 from libcompiler_rtJeremie Courreges-Anglas
Hints from kettenis@, ok kettenis@ deraadt@
2020-08-11setitimer(2): write new timer value in one placecheloha
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@
2020-08-11Prioritize incoming certificate requests by the order of CERTEQ payloadstobhe
in the received message. ok patrick@
2020-08-11Send an unexpected message alert if no valid content type is found.Joel Sing
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@
2020-08-11Increment the epoch in the same place for both read and write.Joel Sing
ok inoguchi@ tb@
2020-08-11Use 0 instead of 0x00 for memset() calls.Joel Sing
ok inoguchi@ tb@
2020-08-11Use SSL3_SEQUENCE_SIZE for last_write_sequence[] rather than hardcoding.Joel Sing
ok inoguchi@ tb@
2020-08-11In SSL_new() just 'goto err' on allocation failure.Joel Sing
The error path does the same as the currently duplicated code. ok inoguchi@ tb@
2020-08-11setitimer(2): consolidate copyin(9), input validation, input conversioncheloha
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@
2020-08-11Update awk to August 7, 2020 version.Todd C. Miller
2020-08-11getitimer(2): don't enter itimer_mtx to read ITIMER_REAL itimerspeccheloha
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.
2020-08-11Explicitly #include <scsi/scsi_debug.h> rather than assuming scsiconf.h will doKenneth R Westerback
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.
2020-08-11struct process: annotate locking for getitimer(2), setitimer(2)cheloha
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@
2020-08-11syncStuart Henderson
2020-08-11let ssh_config(5)'s AddKeysToAgent keyword accept a time limit forDamien Miller
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@
2020-08-11let the "Confirm user presence for key ..." ssh-askpass notificationDamien Miller
respect $SSH_ASKPASS_REQUIRE; ok markus@
2020-08-11sync with upstream libfido2 rev 2fa20b889, picking up ~7 monthsDamien Miller
of fixes and a few new APIs that we'd like to use in OpenSSH ok deraadt@
2020-08-11Remove fixtfti.c from ppc-if to unbreak macppc build. I guess kettenis@Patrick Wildt
was right that this isn't really needed. Now the list is the same as what we had for the previous compiler-rt version.
2020-08-11I accidentally zeored out a few bytes of the TLSv1.0 session ID.Theo Buehler
Restore them to their previous values.
2020-08-11fix path for testing if a .S existsJonathan Gray
2020-08-11add -w so kstat can update and print stats at a specified wait interval.David Gwynne
2020-08-10Get Elantech v1 touchpad with fw version 0x20022 working.Marcus Glocker
From sxvghd (at) firemail (dot) cc, on tech@
2020-08-10Tedu compiler-rt 8.0.1.Patrick Wildt
2020-08-10Un-hook and re-hook libcompiler_rt.Patrick Wildt
ok kettenis@
2020-08-10Add build infrastructure for compiler-rt.Patrick Wildt
ok kettenis@
2020-08-10Re-apply our patches to compiler-rt.Patrick Wildt
ok kettenis@
2020-08-10Import compiler-rt 10.0.1 release.Patrick Wildt
ok kettenis@
2020-08-10Reduce log spam.tobhe
2020-08-10Remove unused argument.tobhe
ok patrick@
2020-08-10Avoid passing -1 to freezero.Theo Buehler
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
2020-08-10Do not block IPIs when acquiring the rendezvous mutex. Otherwise theVisa Hankala
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.
2016-09-05Import libcompiler_rt 3.9.0, LLVM's replacement for libgcc.Pascal Stumpf
This is the lib/builtin directory of the compiler-rt source tarball. comments/ok patrick@, ok kettenis@
2020-08-10syncPatrick Wildt
2020-08-10Minor code shuffle to get all *_activate(), *_probe() and *_detach() functionsKenneth R Westerback
nestled together. Rename scsibusprint() to scsibussubprint() since it is used with scsibussubmatch().
2020-08-10minor polishing: fix typos, add HISTORY and AUTHORS, a few wordingIngo Schwarze
simplifications, add missing markup, and break an overlong line
2020-08-10Set `IFXF_MPSAFE' bit to pppac(4) related `ifnet'. This moves pppac(4)mvs
packets output out of KERNEL_LOCK. pppac(4) and pipex(4) are ready to this. ok yasuoka@
2020-08-10sigh, i made the previous diff to small.David Gwynne
main needs to understand the kstat_tree type now, so move the declaration up.
2020-08-10factor out the printing of kstats. no functional change otherwise.David Gwynne
2020-08-10remove #if 0'd ufs2 magic error which predates ffs2 supportJonathan Gray
ok kn@
2020-08-10use EROFS when attempting to mount a 4.2BSD fs without MNT_RDONLYJonathan Gray
This is the documented behaviour which was changed by pedro in rev 1.81 which was partially backed out in rev 1.82.
2020-08-10consistently return EINVAL on invalid BPBJonathan Gray
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@
2020-08-10Remove the acpicpu_sc array and instead locate acpicpu instances usingJonathan Matthew
the ci_acpicpudev pointer in struct cpu_info. This simplifies matters when we have lots of cpus. ok kettenis@