linux/drivers/nvdimm
Mathieu Desnoyers f6932a2754 nvdimm/pmem: fix leak on dax_add_host() failure
Fix a leak on dax_add_host() error, where "goto out_cleanup_dax" is done
before setting pmem->dax_dev, which therefore issues the two following
calls on NULL pointers:

out_cleanup_dax:
        kill_dax(pmem->dax_dev);
        put_dax(pmem->dax_dev);

Link: https://lkml.kernel.org/r/20240208184913.484340-1-mathieu.desnoyers@efficios.com
Link: https://lkml.kernel.org/r/20240208184913.484340-2-mathieu.desnoyers@efficios.com
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Cc: Alasdair Kergon <agk@redhat.com>
Cc: Mike Snitzer <snitzer@kernel.org>
Cc: Mikulas Patocka <mpatocka@redhat.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Dave Chinner <david@fromorbit.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2024-02-22 15:27:19 -08:00
..
badrange.c libnvdimm: remove kernel-doc warnings: 2023-10-18 09:48:05 -07:00
btt_devs.c nvdimm: Remove usage of the deprecated ida_simple_xx() API 2024-01-03 12:21:36 -08:00
btt.c libnvdimm updates for v6.8 2024-01-12 14:00:18 -08:00
btt.h nvdimm-btt: convert to blk_alloc_disk/blk_cleanup_disk 2021-06-01 07:42:23 -06:00
bus.c nvdimm: Remove usage of the deprecated ida_simple_xx() API 2024-01-03 12:21:36 -08:00
claim.c libnvdimm: Cleanup include of badblocks.h 2020-12-15 21:47:45 -08:00
core.c nvdimm: Fix firmware activation deadlock scenarios 2022-04-28 14:01:56 -07:00
dax_devs.c nvdimm: Remove usage of the deprecated ida_simple_xx() API 2024-01-03 12:21:36 -08:00
dimm_devs.c nvdimm/dimm_devs: fix kernel-doc for function params 2024-01-03 12:21:36 -08:00
dimm.c libnvdimm: Make remove callback return void 2021-02-16 19:35:29 -08:00
e820.c
Kconfig nvdimm: Support sizeof(struct page) > MAX_STRUCT_PAGE_SIZE 2023-01-28 15:32:36 -08:00
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
Makefile drivers/nvdimm: Fix build failure when CONFIG_PERF_EVENTS is not set 2022-03-23 12:17:36 -07:00
namespace_devs.c nvdimm/namespace: fix kernel-doc for function params 2024-01-03 12:21:36 -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: add the missing REQ_OP_WRITE for flush bio 2023-07-19 08:44:36 -07:00
nd-core.h cxl for v6.3 2023-02-25 09:19:23 -08:00
nd.h libnvdimm: Annotate struct nd_region with __counted_by 2023-09-27 10:33:47 -07:00
of_pmem.c libnvdimm/of_pmem: Use devm_kstrdup instead of kstrdup and check its return value 2023-09-27 10:33:47 -07:00
pfn_devs.c nvdimm: Remove usage of the deprecated ida_simple_xx() API 2024-01-03 12:21:36 -08:00
pfn.h libnvdimm/namespace: Enforce memremap_compat_align() 2020-03-17 12:23:21 -07:00
pmem.c nvdimm/pmem: fix leak on dax_add_host() failure 2024-02-22 15:27:19 -08:00
pmem.h dax: introduce DAX_RECOVERY_WRITE dax access mode 2022-05-16 13:35:56 -07:00
region_devs.c libnvdimm: Annotate struct nd_region with __counted_by 2023-09-27 10:33:47 -07:00
region.c nvdimm/region: Move cache management to the region driver 2022-12-02 23:52:32 -08: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: support feature SHMEM_REGION 2024-01-10 13:01:37 -05:00
virtio_pmem.h