aboutsummaryrefslogtreecommitdiff
path: root/crypto/openssh/openbsd-compat/bsd-getpagesize.c
diff options
context:
space:
mode:
authorColin Percival <cperciva@FreeBSD.org>2026-02-14 00:35:26 +0000
committerColin Percival <cperciva@FreeBSD.org>2026-02-18 16:26:37 +0000
commitb2ba4131b9b08d6231392c0b798d0ff35809f600 (patch)
tree5df4bf7a6838a677d9e402193942e2aadb69e6bf /crypto/openssh/openbsd-compat/bsd-getpagesize.c
parent349808d8bd197165390a286bccdaa29a1d77c7ab (diff)
intrng: Shuffle unhandled interrupts tooHEADmain
When interrupt vectors are first allocated, they get assigned to CPU #0; at SI_SUB_SMP / SI_ORDER_SECOND (aka once we have multiple CPUs), the intr_irq_shuffle SYSINIT clears their CPU sets with the effect of forcing them to be assigned to new CPUs later. In case where interrupt vectors were allocated *but not yet bound* this code did not run, with the effect that those interrupts would remain pinned to CPU #0 forever. This affected the ena(4) driver, which allocates interrupts for I/O when the device is attached but doesn't set them up until the interface is brought up much later in the boot process (and, crucially, long after intr_irq_shuffle runs). Adjust intr_irq_shuffle to clear the CPU set for an interrupt source even if it currently has no handlers, so that it will be properly assigned to a CPU when it is used later. Reviewed by: andrew, mhorne MFC after: 1 month Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D55284
Diffstat (limited to 'crypto/openssh/openbsd-compat/bsd-getpagesize.c')
0 files changed, 0 insertions, 0 deletions