linux/drivers/edac
Orange Kao 029ac07bb9 EDAC/igen6: Avoid segmentation fault on module unload
[ Upstream commit fefaae9039 ]

The segmentation fault happens because:

During modprobe:
1. In igen6_probe(), igen6_pvt will be allocated with kzalloc()
2. In igen6_register_mci(), mci->pvt_info will point to
   &igen6_pvt->imc[mc]

During rmmod:
1. In mci_release() in edac_mc.c, it will kfree(mci->pvt_info)
2. In igen6_remove(), it will kfree(igen6_pvt);

Fix this issue by setting mci->pvt_info to NULL to avoid the double
kfree.

Fixes: 10590a9d4f ("EDAC/igen6: Add EDAC driver for Intel client SoCs using IBECC")
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219360
Signed-off-by: Orange Kao <orange@aiven.io>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Link: https://lore.kernel.org/r/20241104124237.124109-2-orange@aiven.io
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2024-12-14 19:50:45 +01:00
..
al_mc_edac.c EDAC/al-mc-edac: Add Amazon's Annapurna Labs Memory Controller driver 2020-08-17 10:10:29 +02:00
altera_edac.c EDAC/altera: Fix deferred probing 2022-02-08 18:34:13 +01:00
altera_edac.h edac: altera: Move Stratix10 SDRAM ECC to peripheral 2019-07-25 14:28:42 -04:00
amd64_edac.c EDAC/amd64: Handle three rank interleaving mode 2021-11-18 19:16:30 +01:00
amd64_edac.h EDAC/amd64: Merge error injection sysfs facilities 2020-12-28 19:36:25 +01:00
amd76x_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
amd8111_edac.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
amd8111_edac.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
amd8131_edac.c EDAC/amd8131: Remove defined but not used bridge_str 2020-04-24 09:08:47 +02:00
amd8131_edac.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
armada_xp_edac.c EDAC/armada-xp: Fix output of uncorrectable error counter 2021-10-14 11:46:03 +02:00
aspeed_edac.c EDAC/aspeed: Use proper format string for printing resource 2021-05-18 16:33:13 +02:00
bluefield_edac.c EDAC/bluefield: Fix potential integer overflow 2024-12-14 19:50:44 +01:00
cell_edac.c edac: rename edac_core.h to edac_mc.h 2016-12-15 08:54:51 -02:00
cpc925_edac.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
debugfs.c ARM: 8892/1: EDAC: Add missing debugfs_create_x32 wrapper 2019-08-29 07:58:01 +01:00
dmc520_edac.c EDAC/dmc520: Don't print an error for each unconfigured interrupt line 2022-06-09 10:22:47 +02:00
e7xxx_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
e752x_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
edac_device.c EDAC/device: Respect any driver-supplied workqueue polling value 2023-02-01 08:27:25 +01:00
edac_device.h EDAC: Fix some kernel-doc markups 2020-11-02 20:33:19 +01:00
edac_device_sysfs.c EDAC: Fix reference count leaks 2020-06-17 15:38:35 +02:00
edac_mc.c EDAC: Fix calculation of returned address and next offset in edac_align_ptr() 2022-02-23 12:03:20 +01:00
edac_mc.h EDAC/mc: Determine mci pointer from the error descriptor 2020-02-17 13:05:10 +01:00
edac_mc_sysfs.c EDAC/mc_sysfs: Add missing newlines when printing {max,dimm}_location 2020-09-18 09:14:01 +02:00
edac_module.c treewide: Fix function prototypes for module_param_call() 2017-10-31 15:30:37 +01:00
edac_module.h EDAC/device: Fix period calculation in edac_device_reset_delay_period() 2023-01-18 11:48:53 +01:00
edac_pci.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
edac_pci.h edac: move documentation from edac_pci*.c to edac_pci.h 2016-12-15 08:54:51 -02:00
edac_pci_sysfs.c EDAC: Fix reference count leaks 2020-06-17 15:38:35 +02:00
fsl_ddr_edac.c EDAC/fsl_ddr: Fix bad bit shift operations 2024-12-14 19:50:44 +01:00
fsl_ddr_edac.h EDAC, fsl_ddr: Add LS1021A to the list of supported hardware 2018-12-19 11:57:45 +01:00
ghes_edac.c EDAC/ghes: Set the DIMM label unconditionally 2022-08-03 12:03:55 +02:00
highbank_l2_edac.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 2019-05-30 11:29:52 -07:00
highbank_mc_edac.c EDAC/highbank: Fix memory leak in highbank_mc_probe() 2023-02-01 08:27:05 +01:00
i7core_edac.c * Add Amazon's Annapurna Labs memory controller EDAC driver, by Talel 2020-10-12 10:12:26 -07:00
i10nm_base.c EDAC/i10nm: fix refcount leak in pci_get_dev_wrapper() 2022-12-31 13:14:03 +01:00
i3000_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
i3200_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
i5000_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
i5100_edac.c EDAC/i5100: Fix error handling order in i5100_init_one() 2020-09-01 12:10:19 +02:00
i5400_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
i7300_edac.c EDAC: Replace HTTP links with HTTPS ones 2020-08-17 09:31:19 +02:00
i82443bxgx_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
i82860_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
i82875p_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
i82975x_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
ie31200_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
igen6_edac.c EDAC/igen6: Avoid segmentation fault on module unload 2024-12-14 19:50:45 +01:00
Kconfig EDAC/igen6: fix core dependency AGAIN 2021-07-15 11:59:59 -07:00
layerscape_edac.c edac: rename edac_core.h to edac_mc.h 2016-12-15 08:54:51 -02:00
Makefile EDAC, i10nm: make skx_common.o a separate module 2024-08-19 05:44:49 +02:00
mce_amd.c EDAC/mce_amd: Do not load edac_mce_amd module on guests 2021-08-09 12:35:43 +02:00
mce_amd.h x86/mce/amd, edac: Remove report_gart_errors 2020-04-14 15:53:46 +02:00
mpc85xx_edac.c EDAC, mpc85xx: Add T2080 l2-cache support 2017-02-03 10:36:35 +01:00
mpc85xx_edac.h EDAC, fsl-ddr: Separate FSL DDR driver from MPC85xx 2016-09-01 10:28:00 +02:00
octeon_edac-l2c.c edac: rename edac_core.h to edac_mc.h 2016-12-15 08:54:51 -02:00
octeon_edac-lmc.c EDAC, octeon: Fix an uninitialized variable warning 2017-11-27 11:57:26 +01:00
octeon_edac-pc.c edac: rename edac_core.h to edac_mc.h 2016-12-15 08:54:51 -02:00
octeon_edac-pci.c edac: rename edac_core.h to edac_mc.h 2016-12-15 08:54:51 -02:00
pasemi_edac.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
pnd2_edac.c EDAC/Intel: Do not load EDAC driver when running as a guest 2021-06-17 18:23:14 -07:00
pnd2_edac.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 2019-06-05 17:36:37 +02:00
ppc4xx_edac.c EDAC/ppc4xx: Convert comma to semicolon 2020-12-30 09:09:11 +01:00
ppc4xx_edac.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
qcom_edac.c EDAC/qcom: Do not pass llcc_driv_data as edac_device_ctl_info's pvt_info 2023-02-01 08:27:25 +01:00
r82600_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
sb_edac.c EDAC/sb_edac: Fix top-of-high-memory value for Broadwell/Haswell 2021-11-18 19:15:58 +01:00
sifive_edac.c A garden variety of small fixes all over the place. 2020-01-27 09:16:22 -08:00
skx_base.c EDAC/skx: Fix overflows on the DRAM row address mapping arrays 2023-05-11 23:00:20 +09:00
skx_common.c EDAC, i10nm: make skx_common.o a separate module 2024-08-19 05:44:49 +02:00
skx_common.h EDAC, i10nm: make skx_common.o a separate module 2024-08-19 05:44:49 +02:00
synopsys_edac.c EDAC/synopsys: Fix error injection on Zynq UltraScale+ 2024-10-17 15:10:42 +02:00
thunderx_edac.c EDAC/thunderx: Fix possible out-of-bounds string access 2024-01-25 14:52:32 -08:00
ti_edac.c EDAC/ti: Add missing MODULE_DEVICE_TABLE 2021-05-14 11:54:53 +02:00
wq.c treewide: Add SPDX license identifier for missed files 2019-05-21 10:50:45 +02:00
x38_edac.c EDAC: Do not issue useless debug statements in the polling routine 2020-10-26 12:59:56 +01:00
xgene_edac.c EDAC/xgene: Fix deferred probing 2022-02-08 18:34:13 +01:00