diff --git a/drivers/net/dm9000.c b/drivers/net/dm9000.c
index d45bcd2660afea3817fee5e1ff74b5aacd2fbb0c..864295e081b6756ae5ab5dec094db909235a5ae1 100644
--- a/drivers/net/dm9000.c
+++ b/drivers/net/dm9000.c
@@ -903,7 +903,7 @@ dm9000_stop(struct net_device *ndev)
 	if (netif_msg_ifdown(db))
 		dev_dbg(db->dev, "shutting down %s\n", ndev->name);
 
-	cancel_delayed_work(&db->phy_poll);
+	cancel_delayed_work_sync(&db->phy_poll);
 
 	netif_stop_queue(ndev);
 	netif_carrier_off(ndev);