The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: Andy Isaacson <adi@hexapodia.org>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel@vger.kernel.org, "Randy.Dunlap" <rdunlap@xenotime.net>
Subject: Re: 2.6.17-rc[56]-mm*: pcmcia "I/O resource not free"
Date: Wed, 21 Jun 2006 11:31:57 -0700	[thread overview]
Message-ID: <20060621183157.GB28016@hexapodia.org> (raw)
In-Reply-To: <20060621171048.GS2038@hexapodia.org>

On Wed, Jun 21, 2006 at 10:10:48AM -0700, Andy Isaacson wrote:
> > > [ 2035.976000] ide2: I/O resource 0xF8B0200E-0xF8B0200E not free.
> > > [ 2035.976000] ide2: ports already in use, skipping probe
> > 
> > hm.  It appears to have decided that 0 < 0xF8B0200E < 0xffff, which is
> > clever of it.
> > 
> > Does it help if you set CONFIG_RESOURCES_32BIT?
> 
> Nope, same conflict with CONFIG_RESOURCES_32BIT set.  You're right, it
> is deciding that 0xF8B0200E conflicts with that range:
> 
> conflict: PCI IO[0->ffff] conflicts with ide2[f8b3c00e->f8b3c00e]
> 
> Looking at the code, I don't understand how this could have worked in
> -rc6; __request_resource hasn't changed, and it says
> 
>     167         if (end < start)
>     168                 return root;
>     169         if (start < root->start)
>     170                 return root;
>     171         if (end > root->end)
>     172                 return root;
> 
> If root-> start == 0 and root->end == 0xffff, we should always hit line
> 172, unless sign extension is in effect... and all the variables are
> unsigned long in -rc6, so that doesn't make sense.
> 
> Rebooting into -rc6 with some debugging...

So 2.6.17-rc6 plus the conflict-printer patch and the
ide-single-byte-request patch does the following (booted with the
PCMCIA/CF adapter in by accident, and I'm using a different CF card now,
but it seems to have done the right thing):

cs: memory probe 0xf0000000-0xf7ffffff: excluding 0xf0000000-0xf7ffffff
cs: memory probe 0xd0200000-0xdfffffff: excluding 0xd0200000-0xd11fffff 0xd1a00000-0xd41fffff 0xd4a00000-0xd51fffff 0xd5a00000-0xd61fffff 0xd6a00000-0xd71fffff 0xd7a00000-0xd81fffff 0xd8a00000-0xd91fffff 0xd9a00000-0xda1fffff 0xdaa00000-0xdb1fffff 0xdba00000-0xdc1fffff 0xdca00000-0xdd1fffff 0xdda00000-0xde1fffff 0xdea00000-0xdf1fffff 0xdfa00000-0xe01fffff
pcmcia: registering new device pcmcia0.0
pcmcia: Detected deprecated PCMCIA ioctl usage from process: cardmgr.
pcmcia: This interface will soon be removed from the kernel; please expect breakage unless you upgrade to new tools.
pcmcia: see http://www.kernel.org/pub/linux/utils/kernel/pcmcia/pcmcia.html for details.
cs: IO port probe 0x100-0x4ff: excluding 0x170-0x177 0x370-0x377 0x4d0-0x4d7
cs: IO port probe 0x800-0x8ff: clean.
cs: IO port probe 0xc00-0xcff: excluding 0xcf8-0xcff
cs: IO port probe 0xa00-0xaff: clean.
conflict: PCI Bus #02[3000->7fff] conflicts with ide2[310e->310e]
conflict: pcmcia_socket0[3100->310f] conflicts with ide2[310e->310e]
hwif_request_region: single-byte request for ide2
 <c0242abe> hwif_request_region+0x9e/0xa0  <c0242bbf> ide_hwif_request_regions+0xff/0x120
 <c0249c90> ide_undecoded_slave+0x0/0xc0  <c0249d79> probe_hwif+0x29/0x4f0
 <c0249c90> ide_undecoded_slave+0x0/0xc0  <c024a255> probe_hwif_init_with_fixup+0x15/0xa0
 <c0243556> ide_register_hw_with_fixup+0x166/0x1b0  <c0249c90> ide_undecoded_slave+0x0/0xc0
 <f8a8612b> idecs_register+0x7b/0xb0 [ide_cs]  <c0249c90> ide_undecoded_slave+0x0/0xc0
 <f8a865a2> ide_config+0x442/0x6c0 [ide_cs]  <f8ab348e> pcmcia_device_probe+0x6e/0x100 [pcmcia]
 <c023ca1c> driver_probe_device+0xbc/0xe0  <c023cac0> __driver_attach+0x0/0x80
 <c023cb30> __driver_attach+0x70/0x80  <c023bd69> bus_for_each_dev+0x69/0x80
 <c01e5723> kobject_set_name+0x43/0xe0  <c023cb65> driver_attach+0x25/0x30
 <c023cac0> __driver_attach+0x0/0x80  <c023c338> bus_add_driver+0x88/0xd0
 <c023d077> driver_register+0x97/0xa0  <c023cfc0> klist_devices_get+0x0/0x10
 <c023cfd0> klist_devices_put+0x0/0x10  <f8ab32f7> pcmcia_register_driver+0x17/0x50 [pcmcia]
 <f894200f> init_ide_cs+0xf/0x11 [ide_cs]  <c0136da2> sys_init_module+0xf2/0x180
 <c0102f2f> sysenter_past_esp+0x54/0x75 
conflict: PCI Bus #02[3000->7fff] conflicts with ide2[3100->3107]
conflict: pcmcia_socket0[3100->310f] conflicts with ide2[3100->3107]
Probing IDE interface ide2...
hde: LEXAR ATA FLASH, CFA DISK drive
ide2 at 0x3100-0x3107,0x310e on irq 3
hde: max request size: 128KiB
hde: 64256 sectors (32 MB) w/1KiB Cache, CHS=1004/2/32
hde: cache flushes not supported
 hde: hde1
ide-cs: hde: Vpp = 0.0

I hope somebody who understands resource.c better than me is reading
this, because I'm pretty much out of time to spend reading code.  (Happy
to test patches, of course.)

-andy

  reply	other threads:[~2006-06-21 18:31 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-15 16:28 2.6.17-rc[56]-mm*: pcmcia "I/O resource not free" Andy Isaacson
2006-06-17 17:03 ` Andrew Morton
2006-06-20 21:17   ` Andy Isaacson
2006-06-20 22:03     ` Andrew Morton
2006-06-20 22:36       ` Randy.Dunlap
2006-06-21  6:50       ` Andy Isaacson
2006-06-21  7:46         ` Andrew Morton
2006-06-21 17:10           ` Andy Isaacson
2006-06-21 18:31             ` Andy Isaacson [this message]
2006-06-22  0:31             ` Vivek Goyal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060621183157.GB28016@hexapodia.org \
    --to=adi@hexapodia.org \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rdunlap@xenotime.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox