From: Vivek Goyal <vgoyal@in.ibm.com>
To: Andy Isaacson <adi@hexapodia.org>
Cc: Andrew Morton <akpm@osdl.org>, linux-kernel@vger.kernel.org
Subject: Re: 2.6.17-rc[56]-mm*: pcmcia "I/O resource not free"
Date: Wed, 21 Jun 2006 20:31:49 -0400 [thread overview]
Message-ID: <20060622003149.GB25514@in.ibm.com> (raw)
In-Reply-To: <20060621171048.GS2038@hexapodia.org>
On Wed, Jun 21, 2006 at 10:10:48AM -0700, Andy Isaacson wrote:
> On Wed, Jun 21, 2006 at 12:46:30AM -0700, Andrew Morton wrote:
> > > [ 2034.060000] pcmcia: registering new device pcmcia0.0
> > > [ 2034.060000] PM: Adding info for pcmcia:0.0
> > > [ 2035.976000] conflict: PCI IO[0->ffff]
> > > [ 2035.976000] hwif_request_region: single-byte request for ide2
> > > [ 2035.976000] [<c0257386>] hwif_request_region+0xa6/0xb0
> [snip]
> > > [ 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.
>
I think this makes sense. We are hitting line 172 in case of -mm because
f8b3c00e is not a valid io port at all. Maximum valid value can be 0xffff.
So _request_region considers this to be a conflict and returns.
It succeeds in -rc6 because ide code is requesting a valid ioport region
ide2[310e->310e].
So __request_region() code seems to be fine. Problem seems to be that
why do we get an invalid ioport range in following call.
addr = hwif->io_ports[IDE_CONTROL_OFFSET];
Either hwif pointer is bad or somehow the location it is pointing to
is corrupt or something else. Can you do some more tracing on hwif.
Thanks
Vivek
prev parent reply other threads:[~2006-06-22 0:32 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
2006-06-22 0:31 ` Vivek Goyal [this message]
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=20060622003149.GB25514@in.ibm.com \
--to=vgoyal@in.ibm.com \
--cc=adi@hexapodia.org \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.