freebsd-dev/sys/x86
Eric van Gyzen 2f32a971b7 Wait longer for a previous IPI to be sent
When sending an IPI, if a previous IPI is still pending delivery,
native_lapic_ipi_vectored() waits for the previous IPI to be sent.
We've seen a few inexplicable panics with the current timeout of 50 ms.
Increase the timeout to 1 second and make it tunable.

No hardware specification mentions a timeout in this case; I checked
the Intel SDM, Intel MP spec, and Intel x2APIC spec.  Linux and illumos
wait forever.  In Linux, see __default_send_IPI_shortcut() in
arch/x86/kernel/apic/ipi.c.  In illumos, see apic_send_ipi() in
usr/src/uts/i86pc/io/pcplusmp/apic_common.c.  However, misbehaving hardware
could hang the system if we wait forever.

Reviewed by:	mav kib
MFC after:	1 week
Sponsored by:	Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D29942
2021-04-30 13:32:29 -05:00
..
acpica x86: clean up empty lines in .c and .h files 2020-09-01 21:23:59 +00:00
bios smbios: Move smbios driver out from x86 machdep code 2021-02-23 21:17:09 +00:00
conf Use envvar rather than nonstandard hint. lines 2020-09-23 19:18:53 +00:00
cpufreq hwpstate_intel: don't unconditionally print the error message 2020-11-29 01:43:04 +00:00
include x86: add x86_clear_dbregs() helper 2021-04-10 04:25:01 +03:00
iommu dmar: reserve memory windows of PCIe root port 2020-12-09 18:43:58 +00:00
isa amd64: Add MD bits for KASAN 2021-04-13 17:42:20 -04:00
linux linux(4): Deduplicate unimpl/dummy syscall handlers 2020-11-05 19:30:31 +00:00
pci x86: clean up empty lines in .c and .h files 2020-09-01 21:23:59 +00:00
x86 Wait longer for a previous IPI to be sent 2021-04-30 13:32:29 -05:00
xen xen/boot: allow specifying boot method when booted from Xen 2021-02-16 15:26:11 +01:00