summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdlib (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-03-08regenjcs2-4/+9
2021-03-08Add Surface Pro Type Coverjcs1-1/+2
from Fredrik Engberg
2021-03-08Allow uhidev child devices to claim selective report idsjcs16-57/+74
There may be multiple matching devices on a single uhidev device but the first device that responds to UHIDEV_CLAIM_ALLREPORTID will block the others from attaching. Change this to UHIDEV_CLAIM_MULTIPLE_REPORTID and require any devices wanting some/all report ids to fill in the claimed array in uhidev_attach_arg with just the reports it needs. uhidev can then run match routines for other drivers with the available report ids. ok anton
2021-03-08Add support for sdhc(4) on Raspberry Pi in ACPI mode.kettenis1-2/+8
ok patrick@
2021-03-08Add RK809 to list of supported chips for this driver.kurt1-3/+3
2021-03-08Add support for rk809 as seen on the Rock Pi N10 with the rk3399pro. Addkurt1-57/+262
support for multiple linear ranges for voltage regulators and use for all rkpmic ICs. ok kettenis@
2021-03-08When introducing prefix_eligible() I botched up one if statement.claudio1-3/+6
For nexthops it is fine if they point to NULL. This is used in local announcements. Only if they point to a real struct the state must be NEXTHOP_REACH. Bug reported by and OK florian@
2021-03-08Revise the ASID allocation sheme to avoid a hang when running out of freekettenis2-31/+120
ASIDs. This should only happen on systems with 8-bit ASIDs, which are currently unsupported in OpenBSD. The new scheme uses "generations". Whenever we run out of ASIDs we bump the generation and flush the complete TLB. The pmaps of processes that are currently on the CPU are carried over into the new generation. This implementation relies on the scheduler lock to make sure this happens without any (known) races. ok patrick@, mpi@
2021-03-08Move a KERNEL_ASSERT_LOCKED() from single_thread_clear() to cursig().mpi1-6/+3
Ze big lock is currently necessary to ensure that two sibling threads are not racing against each other when processing signals. However it is not strickly necessary to unpark sibling threads. ok claudio@
2021-03-08Kill SINGLE_PTRACE and use SINGLE_SUSPEND which has almost the same semantic.mpi3-14/+10
single_thread_set() is modified to explicitly indicated when waiting until sibling threads are parked is required. This is obviously not required if a traced thread is switching away from a CPU after handling a STOP signal. ok claudio@
2021-03-08sndiod: Use chronological order for {dev,port}_listratchov3-22/+29
This simplifies the logic of the initialization code, makes debug printfs nicer and could slightly ease futur development. No behavior change.
2021-03-08sndiod: Initialize dev->master_enabled earlierratchov1-2/+2
This is better style as since recently dev->master_enabled is used by the ctlslot_xxx family functions which -- in the future -- could be called with the device closed. No behavior change.
2021-03-08sndiod: Style tweak: uniformize pattern to access ctlslot_arrayratchov1-4/+6
2021-03-08use a journal reference instead of cstr when possiblejsg3-10/+23
2021-03-08Remove the workaround which identified Go executables, and permitted themderaadt1-7/+2
to do syscalls directly. Go executables now use shared libc like all other dynamic binaries. This makes the "where are syscalls done from" checker strict for all binaries, and also opens the door to change the underlying syscall ABI to the kernel in the future very easily (if we find cause). ok jsing
2021-03-08correct paper titlejsg1-3/+3
2021-03-08Add some references, most of these were removed when we stopped buildingjsg22-50/+208
and installing USD/SMM/PSD docs. jmc@ agrees with the direction, ok millert@ on an earlier diff
2021-03-07Explicitly align kernel text.mortimer2-5/+6
lld11 no longer quietly aligns this when given an address, so we do the alignment explicitly. ok kettenis@
2021-03-07Fix aml_store() to work properly when the lvalue is a reference ofyasuoka1-3/+4
LocalX. In that case, resolving the reference must be done before resetting the LocalX variable. test daniel ok kettenis
2021-03-07use the mx hostname for sni on outgoing connection, not the reverseeric1-2/+2
dns for the peer address. spotted by krw@ ok krw@ tb@
2021-03-07Reduce debug logging by moving protocol level debug logflorian3-129/+177
behind -vv or by deleting unneeded output. While here reword some debug output to make it more useful. (There is more to be done here.)
2021-03-07Fix intercardinal directions in hack help.tb1-1/+1
From Raf Czlonka
2021-03-07No need to cap the exponential backoff here, iface_timeout() alreadyflorian1-9/+7
handles this for us by doing a state transition if we have been stuck in "rebooting" or "requesting" for too long. Makes the code a bit simpler and we only have one place were we need to special case the timeout cap.
2021-03-07Log ESN for child SAs if enabled.tobhe1-3/+6
2021-03-07v1/v2 find is different to pwb/v5 findjsg1-4/+13
2021-03-07Pass standard DMA tag to acpi(4) table drivers.patrick1-1/+2
ok kettenis@
2021-03-07Withdraw nameservers when the interface goes down.florian1-1/+17
Problem reported by deraadt some time ago.
2021-03-07Fold get_lladdr into update_iface, now the only caller.florian4-109/+59
This allows us to pass the link state over to engine here instead of in update_addr which is not available in small. This gets us more in line dhcpleased.
2021-03-07No need to pass the link local and hw address around, we have itflorian3-9/+4
already in the interface on the engine side.
2021-03-07reshuffle to bring more in line with dhcpleasedflorian1-17/+22
2021-03-07Introduce engine_update_if().florian1-82/+75
This was too much code in the imsg handler.
2021-03-07LibreSSL 3.3.2bcook1-3/+3
2021-03-07ansijsg17-636/+262
2021-03-07ansijsg10-279/+115
2021-03-07ansijsg5-61/+24
2021-03-07ansijsg35-816/+320
2021-03-07use uint64_t ethernet addresses for compares in carp.dlg3-17/+16
pass the uint64_t that ether_input has already converted from a real ethernet address into carp_input so it can use it without having to do its own conversion. tested by hrvoje popovski tested by me on amd64 and sparc64 ok patrick@ jmatthew@
2021-03-06whitespacetobhe1-2/+2
2021-03-06Fix PRINT macro, the suffix param to sshlog() was missing.millert1-21/+20
Also remove redundant __func__ prefix from PRINT calls as the macro already adds __FILE__, __func__ and __LINE__. From Christos Zoulas. OK dtucker@
2021-03-06Since with the current design there's one device per domain, and onepatrick1-17/+11
domain per pagetable, there's no need for a backpointer to the domain in the pagetable entry descriptor. There can't be any other domain. Also since there's no list, no list entry member is needed either. This reduces early allocation to half of the previous size. I think it's possible to reduce it even further and not need a pagetable entry descriptor at all, but I need to think about that a bit more.
2021-03-06One major issue talked about in research papers is reducing the overheadpatrick1-61/+103
of the IOVA allocation. As far as I can see the current "best solution" is to cache IOVA ranges in percpu magazines. I don't think we have this issue at all thanks to bus_dmamap_create(9). The map is created ahead of time, and we know the maximum size of the DMA transfer. Since with smmu(4) we have IOVA per domain, allocating IOVA 'early' is essentially free. But pagetable mapping also incurs a performance penalty, since we allocate pagetable entry descriptors through pools. Since we have the IOVA early, we can allocate those early as well. This allocation is a bit more expensive though, but can be optimized further. All this means that there is no allocation overhead in hot code paths. The "only" thing remaining is assigning IOVA to the segments, adjusting the pagetable mappings, and flushing the IOTLB on unload. Maybe there's a way to do a combined flush for NICs, because we give a list of mbufs to the network stack and we could do the IOTLB invalidation only once right before we hand over the mbuf list to the upper layers.
2021-03-06Implement last remaining bits to update from RFC 4941 to RFC 8981.florian2-26/+35
The desync factor is now tracked per temporary IP and the max value has been increased to about 9 hours. While here fix a bug where the minimum acceptable pltime in a router advertisement should be bigger than PRIV_REGEN_ADVANCE not the desync factor (which didn't make any sense at all). From Fernando Gont, thanks! OK sthen
2021-03-06Turns out there are dhcp servers that ignore DHCPREQUEST messages whenflorian1-16/+24
they don't like them instead of sending a DHCPNAK. Found the hard way by benno who didn't want to wait 127 seconds. Due to another bug dhcpleased would have exit through a fatal() in the frontend process if he had waited long enough for a Rebooting -> Init transition because we didn't deconfigure our IP address and thus didn't close our UDP socket. Upon configuring a new IP address we would open a new UDP socket send it to the frontend which would then fatal() due to an unexpected fd passed in. Aproporiate timings are rather underspecified in RFC 2131. Instead of doing an exponential backoff up to 64 in the "Rebooting" and "Requesting" state only go up to 2 for a total of 3 packets and total timeout of 3 seconds before going into "Init" state and sending a DHCPDISCOVER. To prevent the fatal() in the frontend process we reshuffle the state transition into the "Init" state and deconfigure the IP when appropriate.
2021-03-06syncderaadt1-1/+0
2021-03-06ansijsg7-18/+13
2021-03-06put back Lst_Destroy(paths) where it belongsespie1-2/+6
noticed by jsg@
2021-03-05Print PFS group for rekeyed Child SAs.tobhe2-6/+14
ok patrick@
2021-03-05Log transforms of established IKE and Child SAs.tobhe1-7/+36
ok patrick@
2021-03-05Move policy printing code from parse.y to new print.ctobhe4-247/+291
ok patrick@
2021-03-05Avoid print for NULL pointerjan1-5/+4
The subclass arrays have to be empty. OK deraadt@