Hey,

On Thu, Apr 29, 2010 at 05:17:07PM +0900, Komuro wrote:
> >> WARNING: at drivers/pcmcia/cistpl.c:1488 pccard_validate_cis+0x32/0x2c6()
> >
> >is a call trace printed? If so, what is it?
> 
> Here is the call trace.

Thanks! Does this patch help?

From: Dominik Brodowski <[email protected]>
Date: Thu, 29 Apr 2010 15:56:25 +0200
Subject: [PATCH] pcmcia: avoid pccard_validate_cis failure in resume callpath

If the PCMCIA CIS changed before a resume event (e.g. due to
a card exchange while being suspended, possibly also during
a call to "pccardctl reset"), also set the function count to
zero so that the subsequent call to pccard_validate_cis() does
not fail.

Signed-off-by: Dominik Brodowski <[email protected]>

diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index 508f94a..041eee4 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers/pcmcia/ds.c
@@ -1283,6 +1283,7 @@ static int ds_event(struct pcmcia_socket *skt, event_t 
event, int priority)
                        destroy_cis_cache(skt);
                        kfree(skt->fake_cis);
                        skt->fake_cis = NULL;
+                       s->functions = 0;
                        mutex_unlock(&s->ops_mutex);
                        /* now, add the new card */
                        ds_event(skt, CS_EVENT_CARD_INSERTION,




_______________________________________________
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia

Reply via email to