Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4f663bdc authored by Mike Isely's avatar Mike Isely Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (6548): pvrusb2: Fix oops on module removal



The pvrusb2 driver is tearing down its sysfs related pieces in the
incorrect order.  This leaves dangling pointers which causes the
kernel device core to oops.  The problem has been present virtually
forever but became malignant with the changeover to the way of
handling /sys/class.  Fix is just to make sure we don't tear down the
class structure until AFTER the driver instances are deregistered.

Signed-off-by: default avatarMike Isely <isely@pobox.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent ac72fed7
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -136,14 +136,13 @@ static int __init pvr_init(void)

static void __exit pvr_exit(void)
{

	pvr2_trace(PVR2_TRACE_INIT,"pvr_exit");

	usb_deregister(&pvr_driver);

#ifdef CONFIG_VIDEO_PVRUSB2_SYSFS
	pvr2_sysfs_class_destroy(class_ptr);
#endif /* CONFIG_VIDEO_PVRUSB2_SYSFS */

	usb_deregister(&pvr_driver);
}

module_init(pvr_init);