Subject: [PATCH v2.6.36-rc7] net/neighbour: cancel_delayed_work() + flush_scheduled_work() -> cancel_delayed_work_sync()

From: Tejun Heo <[email-masked]>
Date: Tue, 19 Oct 2010 18:04:42 +0200

flush_scheduled_work() is going away.  Prepare for it.

Signed-off-by: Tejun Heo <[email-masked]>
---
 net/core/neighbour.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Index: work/net/core/neighbour.c
===================================================================
--- work.orig/net/core/neighbour.c
+++ work/net/core/neighbour.c
@@ -1486,8 +1486,7 @@ int neigh_table_clear(struct neigh_table
 	struct neigh_table **tp;

 	/* It is not clean... Fix it to unload IPv6 module safely */
-	cancel_delayed_work(&tbl->gc_work);
-	flush_scheduled_work();
+	cancel_delayed_work_sync(&tbl->gc_work);
 	del_timer_sync(&tbl->proxy_timer);
 	pneigh_queue_purge(&tbl->proxy_queue);
 	neigh_ifdown(tbl, NULL);