forked from Minki/linux
pcmcia: Fix requery
The requery logic goes off and attempts to read the CIS of empty slots. In most cases this happens not to do any harm - but not all! Add the missing check and also a WARN() to catch any other offenders. Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
b38a4bd319
commit
8402641b2d
@ -1386,7 +1386,7 @@ int pccard_validate_cis(struct pcmcia_socket *s, unsigned int *info)
|
||||
if (!s)
|
||||
return -EINVAL;
|
||||
|
||||
if (s->functions) {
|
||||
if (s->functions || !(s->state & SOCKET_PRESENT)) {
|
||||
WARN_ON(1);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
@ -667,6 +667,9 @@ static void pcmcia_requery(struct pcmcia_socket *s)
|
||||
{
|
||||
int has_pfc;
|
||||
|
||||
if (!(s->state & SOCKET_PRESENT))
|
||||
return;
|
||||
|
||||
if (s->functions == 0) {
|
||||
pcmcia_card_add(s);
|
||||
return;
|
||||
|
Loading…
Reference in New Issue
Block a user