| To: | alan@xxxxxxxxxx |
|---|---|
| Subject: | [PATCH 29/34] net/shaper: replace sleep_on() with wait_event() |
| From: | Nishanth Aravamudan <nacc@xxxxxxxxxx> |
| Date: | Tue, 25 Jan 2005 16:37:32 -0800 |
| Cc: | netdev@xxxxxxxxxxx, kernel-janitors@xxxxxxxxxxxxxx |
| Sender: | netdev-bounce@xxxxxxxxxxx |
| User-agent: | Mutt/1.5.6+20040907i |
Hi,
Please consider applying.
Description: Use wait_event() instead of the deprecated sleep_on().
Move the in_interrupt() check outside loop, as I do not believe the
process context should change once execution has begun. Patch is
compile-tested.
Signed-off-by: Nishanth Aravamudan <nacc@xxxxxxxxxx>
--- 2.6.11-rc2-kj-v/drivers/net/shaper.c 2005-01-24 09:34:10.000000000
-0800
+++ 2.6.11-rc2-kj/drivers/net/shaper.c 2005-01-25 11:44:13.000000000 -0800
@@ -83,6 +83,7 @@
#include <linux/if_arp.h>
#include <linux/init.h>
#include <linux/if_shaper.h>
+#include <linux/wait.h>
#include <net/dst.h>
#include <net/arp.h>
@@ -109,14 +110,9 @@ static int shaper_lock(struct shaper *sh
/*
* Lock in an interrupt must fail
*/
- while (test_and_set_bit(0, &sh->locked))
- {
- if (!in_interrupt())
- sleep_on(&sh->wait_queue);
- else
- return 0;
-
- }
+ if (in_interrupt())
+ return 0;
+ wait_event(sh->wait_queue, !test_and_set_bit(0, &sh->locked));
return 1;
}
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [PATCH 28/34] net/pktgen: replace interruptible_sleep_on_timeout() with wait_event_timeout(), Nishanth Aravamudan |
|---|---|
| Next by Date: | Re: Where Linux 802.11x support needs work, Jean Tourrilhes |
| Previous by Thread: | [PATCH 28/34] net/pktgen: replace interruptible_sleep_on_timeout() with wait_event_timeout(), Nishanth Aravamudan |
| Next by Thread: | [PATCH] atalk: remove gcc warning when PROC_FS=n, Randy.Dunlap |
| Indexes: | [Date] [Thread] [Top] [All Lists] |