From: domen@coderock.org
To: emoenke@gwdg.de
Cc: linux-kernel@vger.kernel.org, domen@coderock.org, nacc@us.ibm.com
Subject: [patch 2/6] 12/34: cdrom/cdu31a: replace interruptible_sleep_on() with wait_event_interruptible()
Date: Sun, 06 Mar 2005 11:31:54 +0100 [thread overview]
Message-ID: <20050306103155.4AC7D1F202@trashy.coderock.org> (raw)
Use wait_event_interruptible() instead of the deprecated
interruptible_sleep_on(). The patch is straight-forward as the macros should
result in the same execution. Patch is compile-tested (still throws out warnings
regarding {save,restore}_flags()).
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Domen Puncer <domen@coderock.org>
---
kj-domen/drivers/cdrom/cdu31a.c | 40 +++++++++++++++++-----------------------
1 files changed, 17 insertions(+), 23 deletions(-)
diff -puN drivers/cdrom/cdu31a.c~int_sleep_on-drivers_cdrom_cdu31a drivers/cdrom/cdu31a.c
--- kj/drivers/cdrom/cdu31a.c~int_sleep_on-drivers_cdrom_cdu31a 2005-03-05 16:11:33.000000000 +0100
+++ kj-domen/drivers/cdrom/cdu31a.c 2005-03-05 16:11:33.000000000 +0100
@@ -166,6 +166,7 @@
#include <linux/slab.h>
#include <linux/init.h>
#include <linux/interrupt.h>
+#include <linux/wait.h>
#include <asm/system.h>
#include <asm/io.h>
@@ -865,15 +866,13 @@ do_sony_cd_cmd(unsigned char cmd,
save_flags(flags);
cli();
if (current != has_cd_task) { /* Allow recursive calls to this routine */
- while (sony_inuse) {
- interruptible_sleep_on(&sony_wait);
- if (signal_pending(current)) {
- result_buffer[0] = 0x20;
- result_buffer[1] = SONY_SIGNAL_OP_ERR;
- *result_size = 2;
- restore_flags(flags);
- return;
- }
+ wait_event_interruptible(sony_wait, !sony_inuse);
+ if (signal_pending(current)) {
+ result_buffer[0] = 0x20;
+ result_buffer[1] = SONY_SIGNAL_OP_ERR;
+ *result_size = 2;
+ restore_flags(flags);
+ return;
}
sony_inuse = 1;
has_cd_task = current;
@@ -1372,16 +1371,13 @@ static void do_cdu31a_request(request_qu
*/
save_flags(flags);
cli();
- while (sony_inuse) {
- interruptible_sleep_on(&sony_wait);
- if (signal_pending(current)) {
- restore_flags(flags);
+ wait_event_interruptible(sony_wait, !sony_inuse);
+ if (signal_pending(current)) {
+ restore_flags(flags);
#if DEBUG
- printk("Leaving do_cdu31a_request at %d\n",
- __LINE__);
+ printk("Leaving do_cdu31a_request at %d\n", __LINE__);
#endif
- return;
- }
+ return;
}
sony_inuse = 1;
has_cd_task = current;
@@ -2326,12 +2322,10 @@ static int read_audio(struct cdrom_read_
*/
save_flags(flags);
cli();
- while (sony_inuse) {
- interruptible_sleep_on(&sony_wait);
- if (signal_pending(current)) {
- restore_flags(flags);
- return -EAGAIN;
- }
+ wait_event_interruptible(sony_wait, sony_inuse);
+ if (signal_pending(current)) {
+ restore_flags(flags);
+ return -EAGAIN;
}
sony_inuse = 1;
has_cd_task = current;
_
next reply other threads:[~2005-03-06 10:32 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-03-06 10:31 domen [this message]
2005-03-06 11:42 ` [patch 2/6] 12/34: cdrom/cdu31a: replace interruptible_sleep_on() with wait_event_interruptible() Ondrej Zary
2005-03-06 21:04 ` Domen Puncer
2005-03-06 22:17 ` Ondrej Zary
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=20050306103155.4AC7D1F202@trashy.coderock.org \
--to=domen@coderock.org \
--cc=emoenke@gwdg.de \
--cc=linux-kernel@vger.kernel.org \
--cc=nacc@us.ibm.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox