OpenCloudOS-Kernel/drivers/nvdimm
Philip Chen b01793cc63 virtio_pmem: Check device status before requesting flush
[ Upstream commit e25fbcd97cf52c3c9824d44b5c56c19673c3dd50 ]

If a pmem device is in a bad status, the driver side could wait for
host ack forever in virtio_pmem_flush(), causing the system to hang.

So add a status check in the beginning of virtio_pmem_flush() to return
early if the device is not activated.

Signed-off-by: Philip Chen <philipchen@chromium.org>
Message-Id: <20240826215313.2673566-1-philipchen@chromium.org>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Pankaj Gupta <pankaj.gupta.linux@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-10-17 15:24:20 +02:00
..
Kconfig nvdimm: Support sizeof(struct page) > MAX_STRUCT_PAGE_SIZE 2023-01-28 15:32:36 -08:00
Makefile drivers/nvdimm: Fix build failure when CONFIG_PERF_EVENTS is not set 2022-03-23 12:17:36 -07:00
badrange.c
btt.c block: remove ->rw_page 2023-02-02 22:33:34 -08:00
btt.h nvdimm-btt: convert to blk_alloc_disk/blk_cleanup_disk 2021-06-01 07:42:23 -06:00
btt_devs.c nvdimm: Drop nd_device_lock() 2022-04-28 14:01:55 -07:00
bus.c nvdimm: make nd_class variable static 2023-06-23 14:55:58 -06:00
claim.c
core.c nvdimm: Fix firmware activation deadlock scenarios 2022-04-28 14:01:56 -07:00
dax_devs.c driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
dimm.c libnvdimm: Make remove callback return void 2021-02-16 19:35:29 -08:00
dimm_devs.c nvdimm: make security_show static 2023-06-23 15:08:24 -06:00
e820.c
label.c nvdimm/region: Delete nd_blk_region infrastructure 2022-03-11 15:53:13 -08:00
label.h nvdimm/region: Delete nd_blk_region infrastructure 2022-03-11 15:53:13 -08:00
namespace_devs.c nvdimm: Fix devs leaks in scan_labels() 2024-10-04 16:29:30 +02:00
nd-core.h cxl for v6.3 2023-02-25 09:19:23 -08:00
nd.h Driver core changes for 6.3-rc1 2023-02-24 12:58:55 -08:00
nd_perf.c nvdimm: Fix dereference after free in register_nvdimm_pmu() 2023-08-17 09:34:03 -07:00
nd_virtio.c virtio_pmem: Check device status before requesting flush 2024-10-17 15:24:20 +02:00
of_pmem.c libnvdimm/of_pmem: Use devm_kstrdup instead of kstrdup and check its return value 2023-11-20 11:59:19 +01:00
pfn.h
pfn_devs.c nvdimm changes for v6.6 merge window 2023-08-30 20:52:08 -07:00
pmem.c nvdimm: Use kstrtobool() instead of strtobool() 2023-07-19 08:42:50 -07:00
pmem.h dax: introduce DAX_RECOVERY_WRITE dax access mode 2022-05-16 13:35:56 -07:00
region.c nvdimm/region: Move cache management to the region driver 2022-12-02 23:52:32 -08:00
region_devs.c nd_btt: Make BTT lanes preemptible 2023-11-20 11:59:19 +01:00
security.c nvdimm/region: Move cache management to the region driver 2022-12-02 23:52:32 -08:00
virtio_pmem.c virtio_pmem: populate numa information 2023-02-15 06:46:22 -05:00
virtio_pmem.h