Skip to contentSkip to conversation

sbus/bpp: remove sleep_on() usage

PATCH In review [email protected] 3 participants 4 messages Mar 6, 2005 – Jul 18, 2005 SPARC + UltraSPARC (sparc/sparc64)

lore
Share & tools
lore
#0 lore raw

PATCH 3/4 sbus/bpp: remove sleep_on() usage

Use wait-queue directly instead of the deprecated sleep_on() function. This required adding a local wait-queue.

---

 kj-domen/drivers/sbus/char/bpp.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletion(-)
drivers/sbus/char/bpp.c renamed from drivers/sbus/char/bpp.c~sleep_on-drivers_sbus_char_bpp +5 -1
diff -puN drivers/sbus/char/bpp.c~sleep_on-drivers_sbus_char_bpp drivers/sbus/char/bpp.c
@@ -20,6 +20,7 @@
 #include <linux/timer.h>
 #include <linux/ioport.h>
 #include <linux/major.h>
+#include <linux/wait.h>
 #include <linux/devfs_fs_kernel.h>
 
 #include <asm/uaccess.h>
@@ -302,11 +303,14 @@ static void bpp_wake_up(unsigned long va
 
 static void snooze(unsigned long snooze_time, unsigned minor)
 {
+      DEFINE_WAIT(wait);
       init_timer(&instances[minor].timer_list);
       instances[minor].timer_list.expires = jiffies + snooze_time + 1;
       instances[minor].timer_list.data    = minor;
       add_timer(&instances[minor].timer_list);
-      sleep_on (&instances[minor].wait_queue);
+      prepare_to_wait(&instances[minor].wait_queue, &wait, TASK_UNINTERRUPTIBLE);
+      schedule();
+      finish_wait(&instances[minor].wait_queue, &wait);
 }
 
 static int wait_for(unsigned short set, unsigned short clr,

_

#1 lore raw

PATCH 3/4 sbus/bpp: remove sleep_on() usage

From: Nishanth Aravamudan <[email protected]>

Use wait-queue directly instead of the deprecated sleep_on() function. This required adding a local wait-queue.

---
 bpp.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletion(-)

Index: quilt/drivers/sbus/char/bpp.c =================================--- quilt.orig/drivers/sbus/char/bpp.c +++ quilt/drivers/sbus/char/bpp.c
@@ -20,6 +20,7 @@
#include <linux/timer.h>
#include <linux/ioport.h>
#include <linux/major.h>
+#include <linux/wait.h>
#include <linux/devfs_fs_kernel.h>

#include <asm/uaccess.h>
@@ -302,11 +303,14 @@ static void bpp_wake_up(unsigned long va

static void snooze(unsigned long snooze_time, unsigned minor) {

+      DEFINE_WAIT(wait);
       init_timer(&instances[minor].timer_list);
       instances[minor].timer_list.expires = jiffies + snooze_time + 1;
       instances[minor].timer_list.data    = minor;
       add_timer(&instances[minor].timer_list);
-      sleep_on (&instances[minor].wait_queue);
+      prepare_to_wait(&instances[minor].wait_queue, &wait, TASK_UNINTERRUPTIBLE);
+      schedule();
+      finish_wait(&instances[minor].wait_queue, &wait);

}

static int wait_for(unsigned short set, unsigned short clr,

--

#3 lore raw
In reply to [email protected]
Quoted 11 lines · David S. Miller

From: [email protected]
Date: Mon, 20 Jun 2005 23:50:34 +0200

Quoted 5 lines

Use wait-queue directly instead of the deprecated sleep_on() function. This required adding a local wait-queue.

This patch no longer applies, the current snooze() implementation does a schedule_timeout() which seems fine.

Yup, that's fine. Thanks for the responses, David.

-Nish