From f92cc1a37eb765f7fc51a3d363a2a5af7c3a2c05 Mon Sep 17 00:00:00 2001 From: H Hartley Sweeten Date: Fri, 25 Jan 2013 15:00:48 -0700 Subject: [PATCH] --- yaml --- r: 354233 b: refs/heads/master c: 90967d66269f20f24e8465121dadb99e51ad1f64 h: refs/heads/master i: 354231: 5a41f03bc2b289888b8b7e52a078a391d5c53c01 v: v3 --- [refs] | 2 +- .../staging/comedi/drivers/quatech_daqp_cs.c | 30 ++----------------- 2 files changed, 4 insertions(+), 28 deletions(-) diff --git a/[refs] b/[refs] index 0820caee1393..223242f2b8c1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b8319710de2d3f14e11c2d951d238797e2aa489d +refs/heads/master: 90967d66269f20f24e8465121dadb99e51ad1f64 diff --git a/trunk/drivers/staging/comedi/drivers/quatech_daqp_cs.c b/trunk/drivers/staging/comedi/drivers/quatech_daqp_cs.c index 39af1565c066..fe36450cf8cc 100644 --- a/trunk/drivers/staging/comedi/drivers/quatech_daqp_cs.c +++ b/trunk/drivers/staging/comedi/drivers/quatech_daqp_cs.c @@ -238,37 +238,13 @@ static int daqp_ai_cancel(struct comedi_device *dev, struct comedi_subdevice *s) static enum irqreturn daqp_interrupt(int irq, void *dev_id) { struct local_info_t *local = dev_id; - struct comedi_device *dev; - struct comedi_subdevice *s; + struct comedi_device *dev = local ? local->dev : NULL; + struct comedi_subdevice *s = local ? local->s : NULL; int loop_limit = 10000; int status; - if (local == NULL) { - pr_warn("irq %d for unknown device.\n", irq); - return IRQ_NONE; - } - - dev = local->dev; - if (dev == NULL) { - pr_warn("NULL comedi_device.\n"); - return IRQ_NONE; - } - - if (!dev->attached) { - pr_warn("struct comedi_device not yet attached.\n"); + if (!dev || !dev->attached || !s || s->private != local) return IRQ_NONE; - } - - s = local->s; - if (s == NULL) { - pr_warn("NULL comedi_subdevice.\n"); - return IRQ_NONE; - } - - if (s->private != local) { - pr_warn("invalid comedi_subdevice.\n"); - return IRQ_NONE; - } switch (local->interrupt_mode) {