net/shaper: replace sleep_on() with wait_event()
Subsystems (2)
PATCH 17/26 net/shaper: replace sleep_on() with wait_event()
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 <[email protected]>
Signed-off-by Domen Puncer <[email protected]>
---
kj-domen/drivers/net/shaper.c | 12 ++++-------- 1 files changed, 4 insertions(+), 8 deletions(-)
drivers/net/shaper.c renamed from drivers/net/shaper.c~sleep_on-drivers_net_shaper +4 -8
@@ -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 ; }
_