> Date: Tue, 16 Dec 2014 15:16:58 +1000 > From: Jonathan Matthew <jonat...@d14n.org> > > On Sun, Dec 14, 2014 at 06:22:37PM +0100, Hrvoje Popovski wrote: > > Hi all, > > > > I have got two new Dell R630 and have current on them from Sun Dec > > 14 15:07:17. Installation went great and very fast. > > The problem is that I see around 11k interrupts on acpi0. First I > > thought that problem is similar to this thread > > http://marc.info/?l=openbsd-misc&m=140551906923931&w=2 > > > > But if in dell bios system profile settings is set to performance or > > to DAPC there are always interrupts on acpi0. > > In links bellow you can find acpidump and dmesg from performance and > > DAPC settings in dell bios. > > We just got some r630s too, so I spent some time last week figuring out what's > going on here. Something in the AML wants to talk to the intel MEI device. > Normally this works, but on the new generation of dell machines (we've seen it > on r630s and r730s), it's been moved outside the pci memory range we currently > allow on amd64. You can see this in your dmesgs: > > 0:22:0: mem address conflict 0x33ffff03000/0x10 > 0:22:1: mem address conflict 0x33ffff02000/0x10 > > The interrupt will keep triggering until it manages to talk to the device, > which will never happen. > > kettenis@ says we can get the pci memory range information we need to deal > with > this from acpi. Until that happens, expanding the allowed pci memory range > makes things work properly. > > ok?
ok kettenis@ (although I'd prefer if you did a s/acpi/ACPI/ in the comment). > Index: pci_machdep.c > =================================================================== > RCS file: /cvs/src/sys/arch/amd64/pci/pci_machdep.c,v > retrieving revision 1.59 > diff -u -p -u -p -r1.59 pci_machdep.c > --- pci_machdep.c 19 Apr 2014 11:53:42 -0000 1.59 > +++ pci_machdep.c 16 Dec 2014 04:21:53 -0000 > @@ -622,13 +622,17 @@ pci_init_extents(void) > * here. As long as vendors continue to support > * 32-bit operating systems, we should never see BARs > * outside that region. > + * > + * Dell 13G servers have important devices outside the > + * 36-bit address space. Until we can extract the address > + * ranges from acpi, expand the allowed range to suit. > */ > pcimem_ex = extent_create("pcimem", 0, 0xffffffffffffffffUL, > M_DEVBUF, NULL, 0, EX_NOWAIT); > if (pcimem_ex == NULL) > return; > - extent_alloc_region(pcimem_ex, 0x1000000000UL, > - 0xfffffff000000000UL, EX_NOWAIT); > + extent_alloc_region(pcimem_ex, 0x40000000000UL, > + 0xfffffc0000000000UL, EX_NOWAIT); > > for (bmp = bios_memmap; bmp->type != BIOS_MAP_END; bmp++) { > /*