From: Cong Wang <xiyou.wangcong@gmail.com>
To: Feng Ye <f_ye@yahoo.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: How to wait for threaded irq handler to finish, as in work queue flush/cancel?
Date: Sat, 14 Jan 2012 15:53:55 +0800 [thread overview]
Message-ID: <4F113493.3030701@gmail.com> (raw)
In-Reply-To: <1326519648.92006.YahooMailNeo@web112707.mail.gq1.yahoo.com>
On 01/14/2012 01:40 PM, Feng Ye wrote:
> Hello there,
>
>
> I have a question regarding how to cancel threaded irq handler in a driver's suspend function.
> If it's NOT threaded irq, normally you have a work queue, and in the suspend function, you call either cancel_work_sync() or flush_work(), these function will WAIT for the work queue to finish if it's in the middle of something.
> However if you use threaded irq, then you don't need a work queue, then in the suspend function, I don't know if there's a simple function that can be used to cancel and wait the thread to finish?
>
>
Hi,
Isn't free_irq() what you want?
/**
* free_irq - free an interrupt allocated with request_irq
* @irq: Interrupt line to free
* @dev_id: Device identity to free
*
* Remove an interrupt handler. The handler is removed and if the
* interrupt line is no longer in use by any driver it is disabled.
* On a shared IRQ the caller must ensure the interrupt is disabled
* on the card it drives before calling this function. The function
* does not return until any executing interrupts for this IRQ
* have completed.
*
* This function must not be called from interrupt context.
*/
prev parent reply other threads:[~2012-01-14 7:54 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1326519475.54455.YahooMailNeo@web112702.mail.gq1.yahoo.com>
2012-01-14 5:40 ` How to wait for threaded irq handler to finish, as in work queue flush/cancel? Feng Ye
2012-01-14 7:53 ` Cong Wang [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F113493.3030701@gmail.com \
--to=xiyou.wangcong@gmail.com \
--cc=f_ye@yahoo.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.