created | 2022-07-03T20:28:10Z |
---|---|
begin | 2022-06-28T00:00:00Z |
end | 2022-06-29T00:00:00Z |
path | src/sys |
commits | 31 |
date | 2022-06-28T08:01:40Z | |||
---|---|---|---|---|
author | mvs | |||
files | src/sys/net/if.c | log | diff | annotate |
src/sys/net/netisr.h | log | diff | annotate | |
src/sys/net/pipex.c | log | diff | annotate | |
message |
Introduce `pipexoutq' mbuf(9) queue, and put outgoing pipex(4) related PPPOE packets within. Do (*if_output)() calls within netisr handler with netlock held. We can't predict netlock state when pipex(4) related (*if_qstart)() handlers called. This means we can't use netlock within pppac_qstart() and pppx_if_qstart() handlers. ok bluhm@ |
date | 2022-06-28T08:14:03Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/dev/acpi/xhci_acpi.c | log | diff | annotate |
message |
Add hardware ID for XHCI-compliant USB controller without standard debug. ok jsg@ |
date | 2022-06-28T08:15:04Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/dev/acpi/ehci_acpi.c | log | diff | annotate |
message |
Add hardware ID for EHCI-compliant USB controller with standard debug. ok jsg@ |
date | 2022-06-28T08:24:29Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/netinet6/ip6_input.c | log | diff | annotate |
message |
The ip6_hbhchcheck() function never reads the nxtp parameter, it only sets its value. It is more obvious to return the next protocol or IPPROTO_DONE to signal error. All IP protocol functions do that. OK sashan@ florian@ |
date | 2022-06-28T09:32:27Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/dev/dt/dt_prov_static.c | log | diff | annotate |
src/sys/dev/dt/dtvar.h | log | diff | annotate | |
src/sys/kern/kern_synch.c | log | diff | annotate | |
src/sys/netinet/in_pcb.c | log | diff | annotate | |
src/sys/netinet/ip_ipsp.c | log | diff | annotate | |
message |
Use btrace(8) to debug reference counting. dt(4) provides a static tracepoint for each type of refcnt we have. As a start, add inpcb and tdb refcnt. When the counter changes, btrace may print the actual object, the current counter, the change value and optionally the stack trace. discussed with visa@; OK mpi@ |
date | 2022-06-28T09:32:28Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/sys/refcnt.h | log | diff | annotate |
src/sys/sys/tracepoint.h | log | diff | annotate | |
message |
Use btrace(8) to debug reference counting. dt(4) provides a static tracepoint for each type of refcnt we have. As a start, add inpcb and tdb refcnt. When the counter changes, btrace may print the actual object, the current counter, the change value and optionally the stack trace. discussed with visa@; OK mpi@ |
date | 2022-06-28T09:41:24Z | |||
---|---|---|---|---|
author | jan | |||
files | src/sys/net/if.c | log | diff | annotate |
message |
ifconfig(8) return "Not supported" if you try to configure tso on a non-tso supported interface. pointed out by bluhm@ OK bluhm@ |
date | 2022-06-28T10:01:13Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/net/route.c | log | diff | annotate |
src/sys/net/route.h | log | diff | annotate | |
src/sys/net/rtable.c | log | diff | annotate | |
src/sys/net/rtsock.c | log | diff | annotate | |
message |
Use refcnt API for struct rtentry instead of hand-crafted atomic operations. OK mvs@ |
date | 2022-06-28T10:38:55Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_fault.c | log | diff | annotate |
message |
Do not consider adjacent pages when doing a CoW. Those pages should already be entered, this speeds up CoW faults. Stolen from NetBSD. ok miod@, kettenis@ |
date | 2022-06-28T10:45:55Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_fault.c | log | diff | annotate |
src/sys/uvm/uvm_pager.c | log | diff | annotate | |
message |
Do not clean PG_BUSY before calling uvm_anon_release(). Fix an assertion reported by gkoehler@. ok kettenis@ |
date | 2022-06-28T12:08:17Z | |||
---|---|---|---|---|
author | claudio | |||
files | src/sys/kern/kern_sig.c | log | diff | annotate |
message |
Cleanup the sleep loop in single_thread_check_locked(). The deep checks only matter on entry and the pr->ps_single check is done in the while body. With and OK mpi@ |
date | 2022-06-28T12:10:37Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_pager.c | log | diff | annotate |
message |
Move the guts of uvm_aio_aiodone() into a separate function. This will help dealing with error cases. No functionnal changes. |
date | 2022-06-28T12:11:41Z | |||
---|---|---|---|---|
author | jsg | |||
files | src/sys/arch/amd64/amd64/cacheinfo.c | log | diff | annotate |
src/sys/arch/amd64/include/Attic/cacheinfo.h | log | diff | annotate | |
src/sys/arch/amd64/include/cpu.h | log | diff | annotate | |
message |
rewrite amd64 printing of cache details Previously we looked at cpuid 0x80000005 for L1/TLB details which Intel documents as reserved. And cpuid 0x80000006 for L2 details. Intel also encode cache details in cpuid 4. AMD have mostly the same encoding with cpuid 0x8000001d 0x80000005/0x80000006 is used as a fallback. Prompted by Intel Tiger Lake and Alder Lake machines returning an associativity value of 7 from cpuid 0x80000006. The previous code would print "disabled L2 cache", 7 is documented by Intel as "See CPUID leaf 04H, sub-leaf 2". tested by Hrvoje Popovski on EPYC 7413, and myself on various machines ok mlarkin@ |
date | 2022-06-28T13:05:42Z | |||
---|---|---|---|---|
author | deraadt | |||
files | src/sys/dev/pci/pcidevs | log | diff | annotate |
message | a start at qualcomm products |
date | 2022-06-28T13:06:21Z | |||
---|---|---|---|---|
author | deraadt | |||
files | src/sys/dev/pci/pcidevs.h | log | diff | annotate |
src/sys/dev/pci/pcidevs_data.h | log | diff | annotate | |
message | sync |
date | 2022-06-28T13:48:06Z | |||
---|---|---|---|---|
author | henning | |||
files | src/sys/net/pf.c | log | diff | annotate |
message |
fix syncookies in conjunction with tcp fast port reuse. This really pointed out that the place syncookies were hooked in was almost, but not completely right. The way it was the special case for tcp fast port reuse in pf_test_state wasn't hit, because the first packet hitting that was the ACK from the peer finishing the 3WHS, and the reconstructed SYN came after. We're now doing pf_find_state (and *only* that) first, then syncookies, then going on so that the old state is thrown away properly and we get a new one with the sequence number modulator set up correctly Bonus: -11 lines of code tracked down (that took a while) + fixed under contract with Hush Communications Canada; special thanks to Lyndon ok sashan |
date | 2022-06-28T14:43:50Z | |||
---|---|---|---|---|
author | visa | |||
files | src/sys/arch/amd64/amd64/conf.c | log | diff | annotate |
src/sys/arch/amd64/include/conf.h | log | diff | annotate | |
src/sys/arch/arm/include/conf.h | log | diff | annotate | |
src/sys/arch/arm64/include/conf.h | log | diff | annotate | |
src/sys/arch/i386/i386/conf.c | log | diff | annotate | |
src/sys/arch/i386/include/conf.h | log | diff | annotate | |
src/sys/arch/landisk/include/conf.h | log | diff | annotate | |
src/sys/arch/loongson/include/conf.h | log | diff | annotate | |
src/sys/arch/luna88k/include/conf.h | log | diff | annotate | |
src/sys/arch/macppc/include/conf.h | log | diff | annotate | |
src/sys/arch/octeon/include/conf.h | log | diff | annotate | |
src/sys/arch/powerpc64/include/conf.h | log | diff | annotate | |
src/sys/arch/riscv64/include/conf.h | log | diff | annotate | |
src/sys/arch/sparc64/include/conf.h | log | diff | annotate | |
src/sys/sys/conf.h | log | diff | annotate | |
message |
Remove unused field d_poll from struct cdevsw. OK miod@ mpi@ |
date | 2022-06-28T16:10:43Z | |||
---|---|---|---|---|
author | mvs | |||
files | src/sys/net/if_ethersubr.c | log | diff | annotate |
message |
Don't call pipex_rele_session() when `session' is NULL. Reported by Hrvoje Popovski. ok bluhm@ |
date | 2022-06-28T16:28:08Z | |||
---|---|---|---|---|
author | anton | |||
files | src/sys/dev/ic/pluart.c | log | diff | annotate |
message |
Remove commented out variables and excessive blank lines in pluart_param(). |
date | 2022-06-28T16:29:03Z | |||
---|---|---|---|---|
author | anton | |||
files | src/sys/dev/fdt/bcm2835_dmac.c | log | diff | annotate |
message |
No need to pass a copy of the bcmdmac_channel structure to predicate routines. ok deraadt@ kettenis@ |
date | 2022-06-28T16:29:56Z | |||
---|---|---|---|---|
author | anton | |||
files | src/sys/dev/acpi/com_acpi.c | log | diff | annotate |
message |
A com_acpi_softc pointer is used as the interrupt callback cookie which is later on interpreted as a com_softc pointer. This is not a problem in practice as a com_softc structure is the first member of the com_acpi_softc structure. Using the actual types consistently yields a better symmetry in my opinion between registering the interrupt and the corresponding interrupt handler. ok deraadt@ kettenis@ |
date | 2022-06-28T19:07:40Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_pager.c | log | diff | annotate |
message |
Reserve a second segment for the page daemon. This ensures uvm_swap_io() can succeeds even in OOM situations because two uvm_pagermapin() allocations, requiring a segment each, are needed to bounce or encrypt a swap cluster. ok beck@, kettenis@ |
date | 2022-06-28T19:19:34Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_swap.c | log | diff | annotate |
src/sys/uvm/uvm_swap.h | log | diff | annotate | |
message |
Pre-allocate pages in DMA-reachable region to ensure progress in the swapper. Currently swap encryption is not done in place and some architectures need to bounce pages into a DMA-reachable region for I/Os, for that uvm_swap_io() needs to allocate at most 64K to write a swap cluster to disk. Pre-allocate such amount of memory to be sure the page daemon can make progress in OOM situation. Also introduce a sleeping point to wait for the previous asynchronous I/O holding the pre-allocated pages, there's no point in building clusters if no progress can be made. ok beck@, kettenis@ |
date | 2022-06-28T19:23:08Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_pdaemon.c | log | diff | annotate |
message |
Use new & shiny define for the maximum number of pages of a swap cluster. ok beck@, kettenis@ |
date | 2022-06-28T19:31:30Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_pdaemon.c | log | diff | annotate |
message |
Consider pmemrange regions when trying to free pages from the inactive list. Instead of starting with the first page on the inactive list pick the first one that fits in the range of a given pmemrange region. Fix an issue where the page daemon would be hogging a CPU without freeing any page because the global limits are satisfied. The algorithm could certainly be revisited, the LRU is not really working and there is a huge delay before recovering when the first pages need to be swapped and the system is in OOM situation but at least there is no starvation and the system now recovers. ok beck@, kettenis@ |
date | 2022-06-28T19:39:54Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/uvm/uvm_swap.c | log | diff | annotate |
message |
Make sure uvm_swap_get() always sleep and do not return and error. If no memory was immediately available to decrypt (bounce) a page from swap an error was returned to the fault handler which would result in processes dying when a lot of memory pressure was applied to a system. Note that reading from swap is always done synchronously. ok beck@, kettenis@ |
date | 2022-06-28T19:50:40Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/arch/arm64/dev/acpipci.c | log | diff | annotate |
message |
The x13s uses Memory32Fixed() to describe the windows forwarded by the host bridges. Add support for this. ok mlarkin@, patrick@ |
date | 2022-06-28T19:55:22Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/arch/arm64/stand/efiboot/efiboot.c | log | diff | annotate |
message |
On the x13s, using the EfiLoaderData memory type for the memory block that we load the kernel into doesn't work. But changing it to EfiLoaderCode makes it work. Presumably the firmware creates a mapping with executable permissions in that case, which is obviously needed for executing kernel code. ok patrick@, mlarkin@ |
date | 2022-06-28T21:02:14Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/dev/acpi/com_acpi.c | log | diff | annotate |
message |
Add support for the Synopsys DesignWare UART found on the Ryzen Embedded V1000 SoCs. ok anton@ |
date | 2022-06-28T23:43:12Z | |||
---|---|---|---|---|
author | naddy | |||
files | src/sys/dev/fdt/amlclock.c | log | diff | annotate |
src/sys/dev/fdt/amlpinctrl.c | log | diff | annotate | |
src/sys/dev/fdt/axppmic.c | log | diff | annotate | |
src/sys/dev/fdt/bd718x7.c | log | diff | annotate | |
src/sys/dev/fdt/hiclock.c | log | diff | annotate | |
src/sys/dev/fdt/hitemp.c | log | diff | annotate | |
src/sys/dev/fdt/imxccm.c | log | diff | annotate | |
src/sys/dev/fdt/imxccm_clocks.h | log | diff | annotate | |
src/sys/dev/fdt/imxsrc.c | log | diff | annotate | |
src/sys/dev/fdt/mvpinctrl.c | log | diff | annotate | |
src/sys/dev/fdt/mvpinctrl_pins.h | log | diff | annotate | |
src/sys/dev/fdt/mvtemp.c | log | diff | annotate | |
src/sys/dev/fdt/rkclock.c | log | diff | annotate | |
src/sys/dev/fdt/rkpinctrl.c | log | diff | annotate | |
src/sys/dev/fdt/rkpmic.c | log | diff | annotate | |
src/sys/dev/fdt/rktemp.c | log | diff | annotate | |
src/sys/dev/fdt/sxiccmu.c | log | diff | annotate | |
src/sys/dev/fdt/sxiccmu_clocks.h | log | diff | annotate | |
src/sys/dev/fdt/sxipio.c | log | diff | annotate | |
src/sys/dev/fdt/sxipio_pins.h | log | diff | annotate | |
message |
constify miscellaneous arm64 pin and clock tables ok miod@ |
date | 2022-06-28T23:43:13Z | |||
---|---|---|---|---|
author | naddy | |||
files | src/sys/dev/ic/imxiicvar.h | log | diff | annotate |
message |
constify miscellaneous arm64 pin and clock tables ok miod@ |