Fixed misleading error when handling IR interrupts.
A message that is not in the archive (sent off-list or not yet received): [email protected]
Andy Walls
Acked-byQuoted 14 lines
Date: Thu, 11 Jul 2013 17:02:44 +0100
From: Luis Alves <[email protected]>
To: [email protected]
Cc: [email protected], [email protected], Luis Alves <[email protected]>
Subject: [PATCH] Fixed misleading error when handling IR interrupts.Hi,
Handling the AV Core/IR interrupts schedules its workqueue but theschedule_workfunction returns false if @work was already on the kernel-global workqueue and true otherwise.
Quoted 5 lines
Printing an error message if @work wasn't in the queue is wrong.
Regards,
Luis
Yes, the use of the return value is wrong (at least since 2.6.32). I must have misinterpreted the meaning of the return value when I added in that error message long ago.
Regards,
Andy
Quoted 23 lines
Signed-off-by Luis Alves <[email protected]>---
drivers/media/pci/cx23885/cx23885-core.c| 5 +----1 file changed, 1 insertion(+), 4 deletions(-)drivers/media/pci/cx23885/cx23885-core.c +1
-4@@ -1941,10 +1941,7 @@ static irqreturn_t cx23885_irq(int irq, void *dev_id)if ((pci_status & pci_mask) &PCI_MSK_AV_CORE ) {cx23885_irq_disable (dev,PCI_MSK_AV_CORE ); -if (!schedule_work (&dev->cx25840_work)) -printk (KERN_ERR "%s: failed to set up deferred work for" -" AV Core/IR interrupt. Interrupt is disabled" -" and won't be re-enabled\n" , dev->name); +schedule_work (&dev->cx25840_work); handled++; }