* [patch 17/26] net/shaper: replace sleep_on() with wait_event()
@ 2005-03-06 10:33 domen
0 siblings, 0 replies; only message in thread
From: domen @ 2005-03-06 10:33 UTC (permalink / raw)
To: jgarzik; +Cc: netdev, domen, nacc
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@us.ibm.com>
Signed-off-by: Domen Puncer <domen@coderock.org>
---
kj-domen/drivers/net/shaper.c | 12 ++++--------
1 files changed, 4 insertions(+), 8 deletions(-)
diff -puN drivers/net/shaper.c~sleep_on-drivers_net_shaper drivers/net/shaper.c
--- kj/drivers/net/shaper.c~sleep_on-drivers_net_shaper 2005-03-05 16:11:49.000000000 +0100
+++ kj-domen/drivers/net/shaper.c 2005-03-05 16:11:49.000000000 +0100
@@ -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;
}
_
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-03-06 10:33 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-06 10:33 [patch 17/26] net/shaper: replace sleep_on() with wait_event() domen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).