[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAE9FiQWpprkp_dzviD8wRpqosJq5Oe+8UTwhL87fbzFm3OknUw@mail.gmail.com>
Date: Sat, 29 Mar 2014 00:11:48 -0700
From: Yinghai Lu <yinghai@...nel.org>
To: Parag Warudkar <parag.lkml@...il.com>
Cc: LKML <linux-kernel@...r.kernel.org>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Linus Torvalds <torvalds@...ux-foundation.org>
Subject: Re: BAR 14: can't assign mem (size 0x200000)
On Fri, Mar 28, 2014 at 6:55 PM, Parag Warudkar <parag.lkml@...il.com> wrote:
>> Can you send out whole boot log (include init booting and from resume) and
>> lspci -tv and lspci -vvxxxx ?
>
> lspci -tv
> -----------
> ~# lspci -tv
> -[0000:00]-+-00.0 Intel Corporation Xeon E3-1200 v3 Processor DRAM Controller
> +-02.0 Intel Corporation Xeon E3-1200 v3 Processor
> Integrated Graphics Controller
> +-03.0 Intel Corporation Xeon E3-1200 v3/4th Gen Core
> Processor HD Audio Controller
> +-14.0 Intel Corporation 8 Series/C220 Series Chipset
> Family USB xHCI
> +-16.0 Intel Corporation 8 Series/C220 Series Chipset
> Family MEI Controller #1
> +-16.3 Intel Corporation 8 Series/C220 Series Chipset
> Family KT Controller
> +-19.0 Intel Corporation Ethernet Connection I217-LM
> +-1a.0 Intel Corporation 8 Series/C220 Series Chipset
> Family USB EHCI #2
> +-1b.0 Intel Corporation 8 Series/C220 Series Chipset High
> Definition Audio Controller
> +-1c.0-[01]--
> +-1c.3-[02-03]----00.0-[03]--
> +-1c.4-[04-3c]--
> +-1d.0 Intel Corporation 8 Series/C220 Series Chipset
> Family USB EHCI #1
> +-1f.0 Intel Corporation C226 Series Chipset Family Server
> Advanced SKU LPC Controller
> +-1f.2 Intel Corporation 8 Series/C220 Series Chipset
> Family 6-port SATA Controller 1 [AHCI mode]
> \-1f.3 Intel Corporation 8 Series/C220 Series Chipset
> Family SMBus Controller
>
> lspci -vvxxxx and dmesg output are kind of big, so attached.
Hi, Parag,
For the boot path, kernel is right.
BIOS does not assign resource for
00:1c.0, (io, mmio, mmio pref), 00:1c.3(io, mmio, mmio pref), 00:1c.4 (io).
but 00:1c.0 00:1c.4 support hotplug either in acpiphp or pcie slot cap.
[ 0.263398] acpiphp: Slot [1] registered
[ 0.263405] pci 0000:00:1c.0: PCI bridge to [bus 01]
[ 0.263884] acpiphp: Slot [1-1] registered
[ 0.263891] pci 0000:00:1c.4: PCI bridge to [bus 04-3c]
so kernel assign new resource to them.
[ 0.281764] pci 0000:00:1c.0: BAR 14: assigned [mem 0x9f200000-0x9f3fffff]
[ 0.281768] pci 0000:00:1c.0: BAR 15: assigned [mem
0x9f400000-0x9f5fffff 64bit pref]
[ 0.281770] pci 0000:00:1c.0: BAR 13: assigned [io 0x2000-0x2fff]
[ 0.281771] pci 0000:00:1c.4: BAR 13: assigned [io 0x3000-0x3fff]
but 00:1c.3 ==> 02:00.0 (bus 03) does not support hotplug.
so kernel does not assign resource 00:1c.3.
Later during resuming, kernel try to assign resource 02:00.0 but it will fail
as parent bridge 00:1c.3 has no resource.
(Not sure how pci_configure_slot get called with this resume path).
so you will have
[11548.934659] pci 0000:02:00.0: BAR 14: can't assign mem (size 0x200000)
[11548.934661] pci 0000:02:00.0: BAR 15: can't assign mem pref (size 0x200000)
[11548.934662] pci 0000:02:00.0: BAR 13: can't assign io (size 0x1000)
[11548.934664] pci 0000:02:00.0: BAR 14: can't assign mem (size 0x200000)
[11548.934666] pci 0000:02:00.0: BAR 15: can't assign mem pref (size 0x200000)
[11548.934667] pci 0000:02:00.0: BAR 13: can't assign io (size 0x1000)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists