Thread (8 messages) 8 messages, 4 authors, 2013-01-29

Re: [PATCH] net: ks8851: convert to threaded IRQ

From: Stephen Boyd <hidden>
Date: 2013-01-29 19:21:57

On 01/29/13 11:02, Felipe Balbi wrote:
On Tue, Jan 29, 2013 at 10:53:08AM -0800, Stephen Boyd wrote:
quoted
On 01/28/13 23:16, Felipe Balbi wrote:
quoted
just as it should have been. It also helps
removing the, now unnecessary, workqueue.
Tested-by: Stephen Boyd <redacted>
quoted
Signed-off-by: Felipe Balbi <redacted>
---
@@ -1505,8 +1485,9 @@ static int ks8851_probe(struct spi_device *spi)
 	ks8851_read_selftest(ks);
 	ks8851_init_mac(ks);
 
-	ret = request_irq(spi->irq, ks8851_irq, IRQF_TRIGGER_LOW,
-			  ndev->name, ks);
+	ret = request_threaded_irq(spi->irq, NULL, ks8851_irq,
+				   IRQF_TRIGGER_LOW | IRQF_ONESHOT,
+				   ndev->name, ks);
I did notice one thing here. The name of the thread is irq/378-eth%d
(where 378 is the irq number). It seems that ndev->name is not fully
formed until register_netdev() is called and so when the thread is
created, the malformed name is used for the thread name.
that would be a problem even before the conversion to threaded irq, the
only difference is that 378- would be omitted.
It doesn't seem to be a problem in the non-threaded case presumably
because the name is pointed to directly, instead of being copied, for
the /proc/interrupts case. In other words, /proc/interrupts shows eth0
instead of eth%d with and without this patch applied.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help