Re: [bisected][resend] pnp: Huge number of "io resource overlap" messages

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Bjorn Helgaas
Date: Tuesday, September 9, 2008 - 8:30 am

On Tuesday 09 September 2008 04:50:06 am Frans Pop wrote:

2.6.26 supported up to 40 I/O resources for PNP devices.  If a
device had more than 40, we complained once and silently ignored
all the rest.


Yep.  This commit removed the fixed limit (40), so we shouldn't see
messages like that any more.  The commit log mentioned these:

        pnpacpi: exceeded the max number of IO resources
        00:01: too many I/O port resources

but I should have mentioned "can't add resource for IO ...", too.


78 messages is certainly intolerable.  If the PNP quirk ignored
PNP resources that had already been disabled, I think we'd generate
"only" 27 messages.


pnp 00:08 is a "motherboard" device the describes a lot of the
legacy hardware (DMA controllers, timers, keyboard, etc) on the
system board.  The "system" driver reserves those resources to
prevent us from placing anything else on top of them.

What's curious about this to me is that those BARs just look wrong:

  0000:00:1f.5 BAR 0 (0x0-0xff)
  0000:00:1f.5 BAR 1 (0x0-0x3f)
  0000:00:1f.6 BAR 0 (0x0-0xff)
  0000:00:1f.6 BAR 1 (0x0-0x7f)

Those seem like they'd be right on top of all those motherboard devices
(and each other).

I have some similar devices, with I/O BARs of the same sizes as
yours, but they have reasonable values and /proc/iomem and
/proc/ioports show sensible things:

  00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03)
        Region 0: I/O ports at 3100 [size=256]
        Region 1: I/O ports at 3200 [size=64]
        Region 2: Memory at c8c01000 (32-bit, non-prefetchable) [size=512]
        Region 3: Memory at c8c02000 (32-bit, non-prefetchable) [size=256]

  00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03) (prog-if 00 [Generic])
        Region 0: I/O ports at 3400 [size=256]
        Region 1: I/O ports at 3500 [size=128]

  $ cat /proc/ioports 
  ...
  3100-31ff : 0000:00:1e.2
    3100-31ff : Intel ICH6
  3200-323f : 0000:00:1e.2
    3200-323f : Intel ICH6
  3400-34ff : 0000:00:1e.3
  3500-357f : 0000:00:1e.3

  $ cat /proc/iomem
  ...
  c8c01000-c8c011ff : 0000:00:1e.2
    c8c01000-c8c011ff : Intel ICH6
  c8c02000-c8c020ff : 0000:00:1e.2
    c8c02000-c8c020ff : Intel ICH6

What do "lspci -vv" and /proc/ioports and /proc/iomem show for you?

Bjorn
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [bisected][resend] pnp: Huge number of "io resource ov ..., Bjorn Helgaas, (Tue Sep 9, 8:30 am)