diff --git a/[refs] b/[refs] index 74f6e1ac16e2..866077cd41d2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 85c93fa95b8fa8dabc6d14c77eb9a9c2e9753ecc +refs/heads/master: f1e83c6c1e7b97ac11d88502c3e5b80cdac9a683 diff --git a/trunk/drivers/char/cyclades.c b/trunk/drivers/char/cyclades.c index 353e888295d1..9d22d58f4298 100644 --- a/trunk/drivers/char/cyclades.c +++ b/trunk/drivers/char/cyclades.c @@ -1444,6 +1444,10 @@ static irqreturn_t cyy_interrupt(int irq, void *dev_id) card_base_addr = cinfo->base_addr; index = cinfo->bus_index; + /* card was not initialized yet (e.g. DEBUG_SHIRQ) */ + if (unlikely(card_base_addr == NULL)) + return IRQ_HANDLED; + /* This loop checks all chips in the card. Make a note whenever _any_ chip had some work to do, as this is considered an indication that there will be more to do. Only when no chip