tobhe [Fri, 28 May 2021 21:09:01 +0000 (21:09 +0000)]
Fix build and disable dhtest for sntrup761x25519. The test assumes a
symmetric KE and does not work with this method.
tb [Fri, 28 May 2021 18:45:09 +0000 (18:45 +0000)]
typo: baring -> barring
tobhe [Fri, 28 May 2021 18:01:39 +0000 (18:01 +0000)]
Add experimental post-quantum hybrid key exchange method
based on Streamlined NTRU Prime (coupled with X25519).
The sntrup761 implementation is imported from OpenSSH.
It is public domain code originally distributed as part
of the SUPERCOP cryptography benchmark suite
(https://bench.cr.yp.to/supercop.html).
The method is not part of the default proposal, but can
be enabled with 'ikesa group sntrup761x25519'.
ok markus@ patrick@
visa [Fri, 28 May 2021 16:33:36 +0000 (16:33 +0000)]
Remove CPU and node id fields that were used with SGI Origin.
visa [Fri, 28 May 2021 16:24:53 +0000 (16:24 +0000)]
Add f_modify and f_process callbacks to socket filterops.
This makes kqueue use the extended callback interface with socket event
filters. Now one level of nested kernel locking is avoided, and the
callbacks run without splhigh().
The filterops no longer check NOTE_SUBMIT, and use a fixed locking
pattern instead. The f_event routines are always called with solock(),
whereas f_modify and f_process are always called without the lock.
OK mpi@
visa [Fri, 28 May 2021 15:52:11 +0000 (15:52 +0000)]
Add cad(4), a driver for Cadence GEM.
This initial revision targets the Zynq-7000, where the GEM implements
single transmit and receive queues with 32-bit DMA addresses. The driver
uses receive checksum offload, but transmit checksum offload is disabled
because of a hardware quirk. Also, the hardware's receive path is prone
to getting stuck if input cannot be handled quickly enough. The driver
attempts to recover by restarting the receiver when no input has been
seen for a while.
OK kettenis@
tb [Fri, 28 May 2021 15:16:43 +0000 (15:16 +0000)]
Silence a clang warning on loss of precision
When converting a long or long long to a double, there may be loss
of precision and clang >= 10 warns about this unless there is a cast.
Add casts to silence this warning - the code is designed to handle
precisely this loss of precision, so this is harmless.
From CheriBSD via FreeBSD
ok millert
patrick [Fri, 28 May 2021 13:08:37 +0000 (13:08 +0000)]
Schedule timeout a little bit sooner. Doing this once every minute isn't
going to hurt, but might save you if you run the machine badly into swap.
Proposed by kettenis@
patrick [Fri, 28 May 2021 13:04:42 +0000 (13:04 +0000)]
Enable imxdog(4)
ok kettenis@
patrick [Fri, 28 May 2021 13:03:55 +0000 (13:03 +0000)]
Once i.MX's watchdog is enabled, it can never be disabled. Some 64-bit
i.MX machines with a recent U-Boot come up with the watchdog enabled, so
we have to regularly ping it to make sure the watchdog doesn't reset us.
The watchdog's timeout can be configured in 0.5s steps to a maximum of
128s. Set it to the maximum, and schedule a timeout which reloads the
counter every 120s.
This only needs to be done if the watchdog is enabled when we boot up.
Tested on Cubox-i (armv7) and MNT Reform (arm64)
ok kettenis@
patrick [Fri, 28 May 2021 12:32:24 +0000 (12:32 +0000)]
imxdog(4)
Reminded by jsg@
patrick [Fri, 28 May 2021 12:30:34 +0000 (12:30 +0000)]
Fix typo in imxesdhc(4)
patrick [Fri, 28 May 2021 11:50:18 +0000 (11:50 +0000)]
Move imxdog(4) to sys/dev/fdt.
ok kettenis@
dlg [Fri, 28 May 2021 04:56:07 +0000 (04:56 +0000)]
kettenis@ pointed out that i forgot to fill in the op_cq_done nvme_op.
dlg [Fri, 28 May 2021 04:49:44 +0000 (04:49 +0000)]
first cut at manpages for aplns(4)
dlg [Fri, 28 May 2021 04:39:54 +0000 (04:39 +0000)]
aplns needs some dmamem per queue for it's iommu.
dlg [Fri, 28 May 2021 04:37:32 +0000 (04:37 +0000)]
commented out lines for aplns(4) for Apple NVME storage controllers.
dlg [Fri, 28 May 2021 04:36:33 +0000 (04:36 +0000)]
start working on support for Apple NVME Storage as found in apple M1 devs
the Apple NVME Storage (aka ans) controller is almost but not quite
a vanilla nvme controller. one difference is that it doesnt attach
to a pci bus, so it needs this custom bus glue. this custom bus
glue also provides us with a nice way to provide a different set
of functions to handle other things that ans does differently to
vanilla nvme controllers.
this is different to how linux deals with ans. the linux support
fakes a pci controller for ans to attach to. i assumed that at some
point a vendor would include nvme in an soc directly and made it a
bus independent driver from day 1. turns out i was right, but i
would never have guessed that the vendor would be apple.
some of the other differences between vanilla nvme and ans are
around command submission and completion. ans nvme command submission
is done via an array of command slots where the host picks a slot
and then posts every slot number it fills in to a doorbell. this
is different to vanilla nvme controllers which use a ring, and post
the producer index in that ring to a doorbell. ans also includes
some weird iommu, the handling of which we wrap up into the command
submission and completion functions.
this code is not yet enabled because it is incomplete. i'm getting
what i've done in so people with actual hardware can start poking
it more seriously.
this implementation is based on information figured out by the guys
porting linux to apple hardware.
dlg [Fri, 28 May 2021 03:05:01 +0000 (03:05 +0000)]
provide nvme_ops for vanilla pci nvme, and use them in the right places.
this paves the way for supporting the apple nvme storage controllers.
hopefully most of the remaining work on that is in the bus glue for
those controllers and this code won't need more tweaks.
hibernate still works, but it's relying on luck at the moment.
hibernate on arm64 and the apple controllers in particular will
almost certainly require more work here.
ok jmatthew@
dlg [Fri, 28 May 2021 02:34:38 +0000 (02:34 +0000)]
provide an nvme_ops struct to start trying to support apple m1 nvme.
the Apple NVME Storage (ans) controller is almost but not quite a
vanilla nvme controller. one difference is that it doesnt attach
to a pci bus, so it will need custom bus glue to attach on those
machines. the other differences are around command submission.
vanilla nvme command submission is done via rings where the host
fills in one or more entries on the ring and then posts where the
ring is up to in a doorbell. ans nvme command submission is done
via an array of command slots where the host picks a slot and then
posts every slot number it fills in to a doorbell instead. this is
kind of clever because once a command slot is allocated, you don't
need any coordination between multiple cpus using that array of
slots to fill in and post the entry they were allocated. on the
other hand, it's different, so the code needs to be specialised.
ans also seems to have some weird iommu thing that needs to be
maintained as commands are posted and completed.
the nvme_ops struct will allow vanilla and ans controllers to provide
their own backens for these different semantics.
ok jmatthew@
dlg [Fri, 28 May 2021 02:03:11 +0000 (02:03 +0000)]
move the nvme_dmamem prototypes so bus glue can use them.
ok jmatthew@
dlg [Fri, 28 May 2021 01:58:27 +0000 (01:58 +0000)]
shuffle the deck chairs. no functional change
dlg [Fri, 28 May 2021 01:57:20 +0000 (01:57 +0000)]
move nvme_barrier to nvmevar.h, just to keep it with the other reg ops.
dlg [Fri, 28 May 2021 01:54:43 +0000 (01:54 +0000)]
let nvme_read8 and nvme_write8 get used by bus glue too.
ok jmatthew@
dlg [Fri, 28 May 2021 01:51:11 +0000 (01:51 +0000)]
move the nvme_read4 and nvme_write4 macros to the header.
this allows nvme bus glue to use the macros too.
ok jmatthew@
cheloha [Thu, 27 May 2021 23:24:40 +0000 (23:24 +0000)]
vga(4): fix vga_doswitch() prototype
Timeout callback functions need to be void (*)(void *). No need to cast
the function pointer if fixing the type is trivial.
ok kettenis@
mvs [Thu, 27 May 2021 20:23:53 +0000 (20:23 +0000)]
Introduce the new test which enforces unp_internalize() to follow error
path and FRELE(9) descriptors.
ok @bluhm
bluhm [Thu, 27 May 2021 18:18:41 +0000 (18:18 +0000)]
Check that libexpat uses arc4random_buf as entropy source.
claudio [Thu, 27 May 2021 16:32:13 +0000 (16:32 +0000)]
Stop processing UPDATES if the peer is not up.
When the RDE issues an UPDATE NOTIFICATION because of some fatal error
like max-prefix count reached the peer is put into state PEER_ERR by
rde_update_err() and all UDPDATEs that are still queued should be dropped.
Noticed and OK deraadt@, OK job@
claudio [Thu, 27 May 2021 16:17:47 +0000 (16:17 +0000)]
With the update of tha as4byte code to RFC 6793 a 0 AS num in the AS4_PATH
results in a attribute delete and so the prefix is now visible. Adjust
expected file to match this.
claudio [Thu, 27 May 2021 16:10:29 +0000 (16:10 +0000)]
File missed in a previous commit. Should fix the error on the eval_all test.
claudio [Thu, 27 May 2021 14:32:08 +0000 (14:32 +0000)]
Rename and move functions used to get per-peer settings to the
hopefully better names peer_has_as4byte() and peer_accept_no_as_set().
Move them to rde_peer.c where all other peer functions live.
OK sthen@
krw [Thu, 27 May 2021 14:27:41 +0000 (14:27 +0000)]
Relax criteria for recognizing GPT formatted media by allowing the
EFI GPT partition (0xEE) in the protective MBR to be smaller that the
actual size of the media.
This allows GPT disk images dd'ed onto larger physical media to be
recognized by fdisk(8) and the kernel.
Feedback from kettenis@ on various earlier versions.
claudio [Thu, 27 May 2021 13:59:44 +0000 (13:59 +0000)]
remove excessive tabs and fix a tyop in comment.
bluhm [Thu, 27 May 2021 12:57:22 +0000 (12:57 +0000)]
No longer patch away other entropy sources from libexpat. Upstream
expat uses arc4random_buf(3) as first option if available. Drop
our local patch. Behavior stays the same. Updates will be easier.
Environment variable EXPAT_ENTROPY_DEBUG can be used to check that
arc4random_buf() is really used.
OK sthen@
job [Thu, 27 May 2021 09:41:02 +0000 (09:41 +0000)]
Fix more warnings
OK tb@
claudio [Thu, 27 May 2021 09:15:51 +0000 (09:15 +0000)]
Use negotiated capabilities to decide if a ROUTE-REFRESH message can be
sent (and also for which AFI/SAFI). Use a slightly better way to write
return if neither route-refresh nor enhanced route-refresh are on.
claudio [Thu, 27 May 2021 09:10:03 +0000 (09:10 +0000)]
Use correct RFC number in comment
job [Thu, 27 May 2021 09:01:08 +0000 (09:01 +0000)]
Fix warning
OK tb@
claudio [Thu, 27 May 2021 08:45:24 +0000 (08:45 +0000)]
When generating updates for a peer that has 'rde evaluate all' set the
old prefix pointer is most probably NULL. If a secondary route is removed
the withdraw would not happen because old == NULL which skips the withdraw.
Access to old is only needed to extract the prefix. So instead extract the
prefix early and use it for both cases. So if 'rde evaluate all' is used
the code tries all prefixes and if none is allowed a withdraw is issued.
Problem noticed and fix tested by Pier Carlo Chiodi
claudio [Thu, 27 May 2021 08:38:42 +0000 (08:38 +0000)]
Fix how the rde_eval_all flag is tracked. Make sure it is correctly set
when a new peer shows up or during a reload. Tracking this during runtime
just does not work reliably (especially for reloads).
Problem noticed and fix tested by Pier Carlo Chiodi
claudio [Thu, 27 May 2021 08:29:06 +0000 (08:29 +0000)]
Add the bits needed in bgpctl to show the new ADD-PATH and enhanced
route refresh capabilities in the neighbor output.
claudio [Thu, 27 May 2021 08:27:48 +0000 (08:27 +0000)]
bgpd(8) will soon support ADD-PATH (RFC7911) and enhanced route refresh
(RFC7313). This is the frist step toward this.
It adds the capability parsers for the two no capabilities, extends the
capability struct and adds the capability negotiation bits.
The route refresh message parser and generator are extended to support
the BoRR and EoRR message. Also add the new NOTIFICATION type and subtype
for the route refresh message.
claudio [Thu, 27 May 2021 08:20:39 +0000 (08:20 +0000)]
Fix bad logic in last commit. If graceful restart is on and the forwarding
state is preserved do the graceful restart dance. If graceful restart is off
or the forwarding state was not preserved flush the table.
kettenis [Thu, 27 May 2021 08:10:12 +0000 (08:10 +0000)]
Use todr_attach(). Prompted by cheloha@
claudio [Thu, 27 May 2021 07:52:54 +0000 (07:52 +0000)]
Improve graceful restart capability handling.
Announce only the graceful restart capability header but do not include any
AFI / SAFI pairs. bgpd does not preserve its forwarding state over restarts
and only implements the "Procedures for the Receiving Speaker".
When calculating the negotiated capabilities do not override the peer
capabilities (AFI / SAFI bits), just make sure the negotiated bits are
cleared. With this the peer capabilities are properly shown in bgpctl.
deraadt [Thu, 27 May 2021 05:51:50 +0000 (05:51 +0000)]
sync
dlg [Thu, 27 May 2021 03:46:15 +0000 (03:46 +0000)]
ajacoutot says i missed copying some bits from bridge for divert-to.
dlg [Thu, 27 May 2021 03:43:23 +0000 (03:43 +0000)]
ajacouto says i missed copying some bits from bridge for divert-to.
kettenis [Wed, 26 May 2021 20:52:21 +0000 (20:52 +0000)]
Add aplspmi(4), a driver for the Apple SPMI controller, and aplpmu(4)
a driver for the Apple "sera" SPMI power management unit that contains
the RTC on Apple M1 systems.
ok patrick@
bluhm [Wed, 26 May 2021 19:14:32 +0000 (19:14 +0000)]
Update libexpat to 2.4.1. This fixes CVE-2013-0340. Relevant for
OpenBSD are security fixes #34 #466 #484 and other changes #467
#473 #483. A new error number in a public header requires a major
library bump. Two functions have been added to API.
OK tb@
kettenis [Wed, 26 May 2021 18:11:59 +0000 (18:11 +0000)]
Fix the return value for the FUTEX_WAIT/FUTEX_WAIT_PRIVATE futex(2)
operation. System calls should return -1 and set errno when they fail.
They should not return an errno value directly. This matches how
the Linux version of futex(2) behaves and what Mesa expects. This fixes
a bug in Mesa where a timeout wouldn't be reported properly.
Technically this is an ABI break. But libc and libpthread were changed
to be compatible with both the old and new ABI, and code outside of base
almost certainly expects Linux compatible behaviour. If you have not
rebuilt libc and the last few days, upgrade using a snap.
Mesa issue discovered by jsg@
ok mpi@, deraadt@
eric [Wed, 26 May 2021 18:08:55 +0000 (18:08 +0000)]
replaces calls to err(3)/errx(3) with fatal()/fatalx() from log.c
for code that runs in the daemon.
ok florian@ millert@
mvs [Wed, 26 May 2021 08:28:34 +0000 (08:28 +0000)]
Use `so_lock' to protect key management (PF_KEY) sockets. This can be
done because we have no cases where one thread should lock two sockets
simultaneously.
tested by yasuoka@
ok bluhm@ markus@
eric [Wed, 26 May 2021 07:05:50 +0000 (07:05 +0000)]
remove unused code
ok millert@
dlg [Wed, 26 May 2021 06:44:28 +0000 (06:44 +0000)]
add support for pf divert-to on tpmr, like what was done for veb(4).
when a divert-to rule applies to a packet, pf doesnt take the packet
away and shove it in the socket directly. pf marks the packet, and
then ip (or ipv6) input processing looks at the mark and picks the
local socket to queue it on. because tpmr operates at layer 2, ip
input has no chance to look at the packet and let the divert socket
steal it.
bridge(4) and now veb(4) handle this by checking if the packet has
the pf divert to mark set on it and calls ip input if it's set.
this copies the semantic to tpmr.
dlg [Wed, 26 May 2021 02:38:01 +0000 (02:38 +0000)]
support divert-to when pf applies it to a packet.
when a divert-to rule applies to a packet, pf doesnt take the packet
away and shove it in the socket directly. pf marks the packet, and
then ip (or ipv6) input processing looks at the mark and picks the
local socket to queue it on. because veb operates at layer 2, ip
input processing only occurred if the packet was destined to go
into a vport interface.
bridge(4) handles this by checking if the packet has the pf divert
to mark set on it and calls ip input if it's set. this copies the
semantic to veb.
this allows divert-to to steal (take?) packets going over a veb and
process them on a local socket.
reported by ajacatot@
djm [Wed, 26 May 2021 01:47:24 +0000 (01:47 +0000)]
fix SEGV in UpdateHostkeys debug() message, triggered when the update
removed more host keys than remain present. Fix tested by reporter
James Cook, via bugs@
bluhm [Tue, 25 May 2021 22:45:09 +0000 (22:45 +0000)]
As network features are not added dynamically, the domain structures
are constant. Having more const makes MP review easier. More
pointers are mapped read-only in the kernel image.
OK deraadt@ mvs@
eric [Tue, 25 May 2021 19:39:22 +0000 (19:39 +0000)]
remove obsolete files
jcs [Tue, 25 May 2021 19:06:13 +0000 (19:06 +0000)]
instruct git to ignore all **/obj entries created by "make obj"
ok deraadt, stsp
guenther [Tue, 25 May 2021 17:07:55 +0000 (17:07 +0000)]
clang's assembler now supports 64-suffixed versions of the
fxsave/xsave/fxrstor/xrstor family of instructions. Use them
directly instead of inserting the 0x48 prefix manually.
ok kettenis@ deraadt@
kn [Tue, 25 May 2021 17:01:36 +0000 (17:01 +0000)]
program headers: do not rely on DYNAMIC coming before GNU_RELRO
Except for some specific cases (thanks guenther) ELF mandates nothing
but the file header be at a fixed location, hence ld.so(1) must not
assume any specific order for headers, segments, etc.
Looping over the program header table to parse segment headers,
_dl_boot() creates the executable object upon DYNAMIC and expects it to
be set upon GNU_RELRO, resulting in a NULL dereference iff that order is
reversed.
Store relocation bits in temporary variables and update the executable
object once all segment headers are parsed to lift this dependency.
Under __mips__ _dl_boot() later on uses the same temporary variable, so
move nothing but the declaration out of MI code so as to not alter the
MD code's logic/behaviour.
Found while porting patchelf(1) from NixOS.
OK guenther
claudio [Tue, 25 May 2021 14:18:44 +0000 (14:18 +0000)]
Instead of the old way of prefix withdraw on a bad AS4_PATH treat it with
prefix withdraw as required by RFC6793. Also update the documentation to
reference RFC6793 instead of the older 4893.
OK sthen@
bluhm [Tue, 25 May 2021 09:55:22 +0000 (09:55 +0000)]
The arrays sadb_exts_allowed_out and sadb_exts_required_out are
constant. Put global variable declarations into header file.
OK mvs@ mpi@
ratchov [Tue, 25 May 2021 08:06:12 +0000 (08:06 +0000)]
Drop assembly for 24-bit fixed-point operations
Now i386 compiler is smart enough to generate a single imul
instruction per fixed-point multiplication. This change also allows
24-bit precision to be used on all archs (if -DADATA_BITS=24 is used).
Tested on arm64 by Doug Moss <dougmoss710 at yahoo.com>, thanks
Suggested and ok naddy@
deraadt [Tue, 25 May 2021 00:35:28 +0000 (00:35 +0000)]
sync
phessler [Mon, 24 May 2021 21:06:52 +0000 (21:06 +0000)]
create audio devices for armv7
tested with an mp3 on a Tinkerboard
OK sthen@ kettenis@
kettenis [Mon, 24 May 2021 18:40:19 +0000 (18:40 +0000)]
Add apldwusb(4), a glue driver for the Synpsys DesignWare USB 3 controllers
found on the Apple M1 SoC.
kettenis [Mon, 24 May 2021 18:38:29 +0000 (18:38 +0000)]
Add support for a DART with two sets of registers. We need this to support
the Synopsys DesignWare USB 3 controller.
dv [Mon, 24 May 2021 17:29:56 +0000 (17:29 +0000)]
Mention support for vmd(8) emulated virtio networking. OK mlarkin@
dtucker [Mon, 24 May 2021 10:25:18 +0000 (10:25 +0000)]
Find openssl binary via environment variable. This allows overriding
if necessary (eg in -portable where we're testing against a specific
version of OpenSSL).
dv [Sun, 23 May 2021 22:43:36 +0000 (22:43 +0000)]
vmd(8): skip inspecting non-udp packets on local interfaces
reyk@ imported packet.c from (I think) dhclient(8). In dhclient,
the packets are already filtered down to just udp. This change has
vmd skip a non-udp ip packet sooner when it's trying to determine
if it is a dhcp/bootp packet that needs processing.
The counters (seen, bad checksums, etc) for ip and udp packets are
also removed as they aren't used by vmd.
This only affects "local" network interfaces for vmd.
OK mlarkin@
kettenis [Sun, 23 May 2021 20:30:42 +0000 (20:30 +0000)]
Some machines (e.g. some Intel Macs) have a EFI memory map with more than
64 entries. Instead of writing beyond the array that we use to construct
a BIOS compatible memory map, check that we don't overflow the array and
print a message if we do. Bump the size of the array from 64 to 128
entries.
Issue reported and debugged by David N. Arnold.
Further input from yasuoka@
ok deraadt@ (earlier version) and yasuaka@
naddy [Sun, 23 May 2021 18:22:57 +0000 (18:22 +0000)]
ssh: The client configuration keyword is "hostbasedacceptedalgorithms"
This fixes a mistake that slipped in when "HostbasedKeyTypes" was
renamed to "HostbasedAcceptedAlgorithms".
Bug report by zack@philomathiclife.com
jan [Sun, 23 May 2021 17:01:21 +0000 (17:01 +0000)]
Constify function parameters.
OK martijn@
eric [Sun, 23 May 2021 16:12:56 +0000 (16:12 +0000)]
add missing entry for cafile
eric [Sun, 23 May 2021 15:57:32 +0000 (15:57 +0000)]
add more TLS options to smtp(1):
- cafile=<path>: override the default root certificates
- nosni: disable SNI completely
- noverify: do not verify sevrer certificate (replaces -C)
- servername=<name>: set server name for SNI
ok tb@
eric [Sat, 22 May 2021 22:30:57 +0000 (22:30 +0000)]
add semantic markup as suggested by schwarze@ and jmc@
bluhm [Sat, 22 May 2021 21:25:38 +0000 (21:25 +0000)]
In dt(4) add an offset of 100000 to the thread ID. This also happens
in other places where the TID is copied from kernel to userland.
So in btrace(8) the filter and action tid variable has the same
value as ps(1) output.
OK anton@ mpi@
bluhm [Sat, 22 May 2021 18:38:40 +0000 (18:38 +0000)]
Test more corner cases of IPv4 fragment reassembly.
drahn [Sat, 22 May 2021 17:07:28 +0000 (17:07 +0000)]
Cast line_size to address width before using for alignment.
ok kettenis@
bluhm [Sat, 22 May 2021 15:49:36 +0000 (15:49 +0000)]
On powerpc64 calling a function needs 64 bytes of stack overhead
per recursion. On amd64 it is only 32. Allocate more stack per
thread and the stack tests pass everywhere
jan [Sat, 22 May 2021 14:30:46 +0000 (14:30 +0000)]
Remove useless fflush(3) calls. lreply() already called fflush(3).
OK martijn@
jan [Sat, 22 May 2021 14:25:30 +0000 (14:25 +0000)]
Remove useless islower(2) before toupper(3).
OK martijn@
kettenis [Sat, 22 May 2021 13:13:14 +0000 (13:13 +0000)]
Fix aml_rwgsb(). My interpretation of the ACPI standard turned out to be
wrong and the buffer size is implied by the field attribute instead of the
field length like for normal OpRegion fields. Fixes various laptops
where reading multiple bytes from AML over an i2c bus would overflow
the buffer. Still fixes the Dell Precision 3640.
ok tb@
eric [Sat, 22 May 2021 12:16:06 +0000 (12:16 +0000)]
reorder entries
eric [Sat, 22 May 2021 09:09:07 +0000 (09:09 +0000)]
allow to specify TLS ciphers and protocols in smtp(1)
improvements from jmc@ schwarze@ tb@
ok tb@
mpi [Sat, 22 May 2021 08:38:29 +0000 (08:38 +0000)]
Use atomic operations for reference counting VM maps.
This is necessary to do this accounting without the KERNEL_LOCK().
ok mvs@, kettenis@
yasuoka [Sat, 22 May 2021 08:29:57 +0000 (08:29 +0000)]
Remove ipsec_utils.c, its headers, and the code block which use it
from npppd(8). They had been disabled for long time.
anton [Sat, 22 May 2021 05:49:32 +0000 (05:49 +0000)]
In revision 1.95 of cgi.c, a meta viewport element was added to the HTML output.
Let `mandoc -Thtml' behave the same, makes the generated HTML a bit more
pleasant to view on a mobile device.
ok schwarze@
bluhm [Fri, 21 May 2021 23:00:02 +0000 (23:00 +0000)]
Ignore return value of execve(2) in ktrace output. It is meaningless.
This fixes syslogd regress on powerpc64.
discussed with kettenis@
bluhm [Fri, 21 May 2021 20:42:21 +0000 (20:42 +0000)]
Fix the calculation of the maximum stack size in the command line
option -s.
bluhm [Fri, 21 May 2021 20:21:10 +0000 (20:21 +0000)]
Set the stack size attribute of the pthreads large enough to allocate
the specified amount of stack memory. On 32 bit architectures
regress fork-exit failed as the default stack size for pthreads is
smaller. With the limit set to the expected size we can test even
larger thread stacks.
krw [Fri, 21 May 2021 19:09:46 +0000 (19:09 +0000)]
The protective MBR for GPT partitioning must be at
sector 0. No EBR qualifies.
kettenis [Fri, 21 May 2021 18:53:12 +0000 (18:53 +0000)]
Avoid spinning on the kernel lock with interrupts disabled.
ok patrick@
kettenis [Fri, 21 May 2021 16:52:42 +0000 (16:52 +0000)]
The implementation of the FUTEX_WAIT option in futex(2) is subtly broken.
Unfortunately libc and libpthread rely on the broken behaviour. Adjust
the code in those libraries such that it works with both the old and the
proposed new behaviour. The kernel changes that fix the issue will be
committed in a week or so to give those who do their own builds a chance
to update these libraries before we make the change.
ok mpi@, deraadt@
deraadt [Fri, 21 May 2021 16:50:48 +0000 (16:50 +0000)]
reduce diff relative to other arch (arm64 seems most relevant here)
deraadt [Fri, 21 May 2021 16:49:57 +0000 (16:49 +0000)]
delete useless comment
deraadt [Fri, 21 May 2021 16:49:35 +0000 (16:49 +0000)]
delete useless comment