diff --git a/[refs] b/[refs] index fde4e8b4d0fb..5e7c413e6504 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2027ae1fa914640c287171035cb607a03ad36e95 +refs/heads/master: 5ad21a337420e82bffb7836ab34027dd7ad624b8 diff --git a/trunk/drivers/block/aoe/aoedev.c b/trunk/drivers/block/aoe/aoedev.c index 0849280bfc1c..6b5110a47458 100644 --- a/trunk/drivers/block/aoe/aoedev.c +++ b/trunk/drivers/block/aoe/aoedev.c @@ -102,6 +102,7 @@ aoedev_freedev(struct aoedev *d) { struct aoetgt **t, **e; + cancel_work_sync(&d->work); if (d->gd) { aoedisk_rm_sysfs(d); del_gendisk(d->gd); @@ -135,7 +136,6 @@ aoedev_flush(const char __user *str, size_t cnt) all = !strncmp(buf, "all", 3); } - flush_scheduled_work(); spin_lock_irqsave(&devlist_lock, flags); dd = &devlist; while ((d = *dd)) { @@ -257,8 +257,6 @@ aoedev_exit(void) struct aoedev *d; ulong flags; - flush_scheduled_work(); - while ((d = devlist)) { devlist = d->next;