]> Git Repo - linux.git/blobdiff - drivers/block/nbd.c
Merge tag 'driver-core-6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux.git] / drivers / block / nbd.c
index e185d7b5f1e8d053c6c1fd6f1965b04414c22ce0..5cffd96ef2d7decd29600be8618c8670fdaf2ddf 100644 (file)
@@ -1411,10 +1411,12 @@ static int nbd_start_device_ioctl(struct nbd_device *nbd)
        mutex_unlock(&nbd->config_lock);
        ret = wait_event_interruptible(config->recv_wq,
                                         atomic_read(&config->recv_threads) == 0);
-       if (ret)
+       if (ret) {
                sock_shutdown(nbd);
-       flush_workqueue(nbd->recv_workq);
+               nbd_clear_que(nbd);
+       }
 
+       flush_workqueue(nbd->recv_workq);
        mutex_lock(&nbd->config_lock);
        nbd_bdev_reset(nbd);
        /* user requested, ignore socket errors */
@@ -2320,6 +2322,7 @@ static struct genl_family nbd_genl_family __ro_after_init = {
        .module         = THIS_MODULE,
        .small_ops      = nbd_connect_genl_ops,
        .n_small_ops    = ARRAY_SIZE(nbd_connect_genl_ops),
+       .resv_start_op  = NBD_CMD_STATUS + 1,
        .maxattr        = NBD_ATTR_MAX,
        .policy = nbd_attr_policy,
        .mcgrps         = nbd_mcast_grps,
This page took 0.035146 seconds and 4 git commands to generate.