]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
EDAC/igen6: Avoid segmentation fault on module unload
authorOrange Kao <orange@aiven.io>
Mon, 4 Nov 2024 12:40:52 +0000 (12:40 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Dec 2024 18:50:45 +0000 (19:50 +0100)
commit029ac07bb92d2f7502d47a4916f197a8445d83bf
tree74a041c1b49f03c1c05d5d3e5c232a5971a4e961
parentd465ea267167d557c196d537549d1b1a58b0e9b2
EDAC/igen6: Avoid segmentation fault on module unload

[ Upstream commit fefaae90398d38a1100ccd73b46ab55ff4610fba ]

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: 10590a9d4f23 ("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>
drivers/edac/igen6_edac.c