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

Configure Feed

Select the types of activity you want to include in your feed.

mei: vsc: Unset the event callback on remove and probe errors

Make mei_vsc_remove() properly unset the callback to avoid a dead callback
sticking around after probe errors or unbinding of the platform driver.

Fixes: 386a766c4169 ("mei: Add MEI hardware support for IVSC device")
Signed-off-by: Hans de Goede <hansg@kernel.org>
Link: https://lore.kernel.org/r/20250623085052.12347-8-hansg@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Hans de Goede and committed by
Greg Kroah-Hartman
6175c697 18f14b2e

+5
+5
drivers/misc/mei/platform-vsc.c
··· 380 380 err_cancel: 381 381 mei_cancel_work(mei_dev); 382 382 383 + vsc_tp_register_event_cb(tp, NULL, NULL); 384 + 383 385 mei_disable_interrupts(mei_dev); 384 386 385 387 return ret; ··· 390 388 static void mei_vsc_remove(struct platform_device *pdev) 391 389 { 392 390 struct mei_device *mei_dev = platform_get_drvdata(pdev); 391 + struct mei_vsc_hw *hw = mei_dev_to_vsc_hw(mei_dev); 393 392 394 393 pm_runtime_disable(mei_dev->dev); 395 394 396 395 mei_stop(mei_dev); 396 + 397 + vsc_tp_register_event_cb(hw->tp, NULL, NULL); 397 398 398 399 mei_disable_interrupts(mei_dev); 399 400