Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

nvme: fix a crash in nvme_mpath_add_disk

For private namespaces ns->head_disk is NULL, so add a NULL check
before updating the BDI capabilities.

Fixes: b2ce4d90690b ("nvme-multipath: set bdi capabilities once")
Reported-by: Avinash M N <Avinash.M.N@wdc.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Max Gurtovoy <maxg@mellanox.com>

+4 -3
+4 -3
drivers/nvme/host/multipath.c
··· 672 672 } 673 673 674 674 if (bdi_cap_stable_pages_required(ns->queue->backing_dev_info)) { 675 - struct backing_dev_info *info = 676 - ns->head->disk->queue->backing_dev_info; 675 + struct gendisk *disk = ns->head->disk; 677 676 678 - info->capabilities |= BDI_CAP_STABLE_WRITES; 677 + if (disk) 678 + disk->queue->backing_dev_info->capabilities |= 679 + BDI_CAP_STABLE_WRITES; 679 680 } 680 681 } 681 682