> Date: Tue, 16 Dec 2014 15:16:58 +1000
> From: Jonathan Matthew <[email protected]>
>
> 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++) {
> /*
>
>