Don't set accel watch on suspend_cancel unless we're in a state where it has meaning diff -r 1d647ef26f3f drivers/xen/netfront/accel.c --- a/drivers/xen/netfront/accel.c +++ b/drivers/xen/netfront/accel.c @@ -709,8 +709,9 @@ int netfront_accelerator_suspend_cancel( * accelerator, so no need to call accelerator_probe_new_vif() * directly here */ - netfront_accelerator_add_watch(np); - return 0; + if (dev->state == XenbusStateConnected) + netfront_accelerator_add_watch(np); + return 0; }