Browse Source

V4L/DVB (3506): Cinergy T2 dmx cleanup on disconnect

Detaching the device didn't clean up several device files in /dev/dvb,
after applying that patch all dvb devices disappeared as expected.

Signed-off-by: Markus Rechberger <mrechberger@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Markus Rechberger 19 năm trước cách đây
mục cha
commit
77cc531990
1 tập tin đã thay đổi với 4 bổ sung0 xóa
  1. 4 0
      drivers/media/dvb/cinergyT2/cinergyT2.c

+ 4 - 0
drivers/media/dvb/cinergyT2/cinergyT2.c

@@ -506,6 +506,9 @@ static int cinergyt2_open (struct inode *inode, struct file *file)
 
 static void cinergyt2_unregister(struct cinergyt2 *cinergyt2)
 {
+	dvb_net_release(&cinergyt2->dvbnet);
+	dvb_dmxdev_release(&cinergyt2->dmxdev);
+	dvb_dmx_release(&cinergyt2->demux);
 	dvb_unregister_device(cinergyt2->fedev);
 	dvb_unregister_adapter(&cinergyt2->adapter);
 
@@ -938,6 +941,7 @@ static int cinergyt2_probe (struct usb_interface *intf,
 	return 0;
 
 bailout:
+	dvb_net_release(&cinergyt2->dvbnet);
 	dvb_dmxdev_release(&cinergyt2->dmxdev);
 	dvb_dmx_release(&cinergyt2->demux);
 	dvb_unregister_adapter(&cinergyt2->adapter);