created | 2024-01-23T22:09:54Z |
---|---|
begin | 2024-01-15T00:00:00Z |
end | 2024-01-16T00:00:00Z |
path | src/sys |
commits | 7 |
date | 2024-01-15T01:15:37Z | |||
---|---|---|---|---|
author | cheloha | |||
files | src/sys/kern/kern_clockintr.c | log | diff | annotate |
src/sys/sys/clockintr.h | log | diff | annotate | |
message |
clockintr: move CLST_IGNORE_REQUESTS from cl_flags to cq_flags In the near future, we will add support for destroying clockintr objects. When this happens, it will no longer be safe to dereference the pointer to the expired clockintr during the dispatch loop in clockintr_dispatch() after reentering cq_mtx. This means we will not be able to safely check for the CLST_IGNORE_REQUESTS flag. So replace the CLST_IGNORE_REQUESTS flag in cl_flags with the CQ_IGNORE_REQUESTS flag in cq_flags. The semantics are the same. Both cl_flags and cq_flags are protected by cq_mtx. Note that we cannot move the CLST_IGNORE_REQUESTS flag to cr_flags in struct clockrequest: that member is owned by the dispatching CPU and is not mutated with atomic operations. |
date | 2024-01-15T02:35:23Z | |||
---|---|---|---|---|
author | dv | |||
files | src/sys/dev/fdt/virtio_mmio.c | log | diff | annotate |
src/sys/dev/pci/virtio_pci.c | log | diff | annotate | |
message |
vio(4): poll device status after issuing device reset. The virtio spec says a driver "should" wait for a device to report a clear device status after performing a reset. In some hypervisors, this doesn't matter as the vcpu's io instruction emulation and virtio network device emulation happen serially in the same thread. In hypervisors like vmd(8), device reset happens asynchronously and the driver can't assume the device is ready. This race condition results in mbuf pool corruption, causing panics. Bug reported and reproduced by bluhm@. Root cause found and diff from sf@. ok dv@ and committed on sf@'s behalf with his permission. |
date | 2024-01-15T08:56:45Z | |||
---|---|---|---|---|
author | jmatthew | |||
files | src/sys/dev/pci/if_bnxt.c | log | diff | annotate |
message |
The maximum number of ring slots a tx packet can use is 32, which is indicated by writing 0 to the 5 bit 'BD count' field in the first slot. Accordingly, mask the value we're writing there. Each packet uses one slot for offload information and then one per DMA segment, which means the maximum number of DMA segments must be 31 rather than 32. Trying to send a packet using 33 slots makes the nic firmware very upset. ok dlg@ |
date | 2024-01-15T11:58:45Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/arch/arm64/arm64/cpu.c | log | diff | annotate |
src/sys/arch/arm64/include/cpu.h | log | diff | annotate | |
message |
We can't call kstat_create(9) when bringing up the secondary CPUs as it uses an rwlock and curproc isn't initialized yet for these CPUs at this point. As a result we hit a "locking against myself" panic if there is any lock contention. Fix this by adding a new ci_midr member to struct cpu_info which gets initialized when we identify the CPUs and use that to attach the kstat stuff. ok tobhe@, dlg@ |
date | 2024-01-15T13:27:20Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/arch/arm64/dev/aplhidev.c | log | diff | annotate |
message |
Fetch touchpad dimensions from firmware instead of hardcoding the values for the original 13" M1 MacBook. ok mlarkin@ |
date | 2024-01-15T15:47:37Z | |||
---|---|---|---|---|
author | mvs | |||
files | src/sys/kern/kern_exit.c | log | diff | annotate |
src/sys/kern/kern_fork.c | log | diff | annotate | |
src/sys/kern/kern_proc.c | log | diff | annotate | |
src/sys/kern/kern_sysctl.c | log | diff | annotate | |
src/sys/sys/proc.h | log | diff | annotate | |
message |
Introduce priterator(), the `ps_list' iterator. Some of `allprocess' list walkthroughs have context switch within, so make exit1() wait until the last reference released. Reported-by: [email protected] ok bluhm claudio |
date | 2024-01-15T16:57:31Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/arch/arm64/dev/rtkit.c | log | diff | annotate |
message |
Add support for bringing up RTKit while !cold. ok tobhe@ |