Some nbd client implementations have a userland's daemon, so we should inform client daemon to clean up and exit. Signed-off-by: Yao Liu <yotta.liu@xxxxxxxxx> --- drivers/block/nbd.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index ca69d6e..22e86f4 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -246,7 +246,7 @@ static int nbd_disconnected(struct nbd_config *config) static void nbd_mark_nsock_dead(struct nbd_device *nbd, struct nbd_sock *nsock, int notify) { - if (!nsock->dead && notify && !nbd_disconnected(nbd->config)) { + if (!nsock->dead && notify) { struct link_dead_args *args; args = kmalloc(sizeof(struct link_dead_args), GFP_NOIO); if (args) { @@ -1891,7 +1891,6 @@ static void nbd_disconnect_and_put(struct nbd_device *nbd) { mutex_lock(&nbd->config_lock); nbd_disconnect(nbd); - nbd_clear_sock(nbd); mutex_unlock(&nbd->config_lock); if (test_and_clear_bit(NBD_HAS_CONFIG_REF, &nbd->config->runtime_flags)) -- 1.8.3.1