diff options
Diffstat (limited to 'linux-2.6-v4l-dvb-ir-core-memleak-fixes.patch')
-rw-r--r-- | linux-2.6-v4l-dvb-ir-core-memleak-fixes.patch | 142 |
1 files changed, 0 insertions, 142 deletions
diff --git a/linux-2.6-v4l-dvb-ir-core-memleak-fixes.patch b/linux-2.6-v4l-dvb-ir-core-memleak-fixes.patch deleted file mode 100644 index 59ba20a43..000000000 --- a/linux-2.6-v4l-dvb-ir-core-memleak-fixes.patch +++ /dev/null @@ -1,142 +0,0 @@ - drivers/media/IR/imon.c | 20 +------------------- - drivers/media/IR/mceusb.c | 15 +-------------- - 2 files changed, 2 insertions(+), 33 deletions(-) - -diff --git a/drivers/media/IR/imon.c b/drivers/media/IR/imon.c -index 65c125e..c185422 100644 ---- a/drivers/media/IR/imon.c -+++ b/drivers/media/IR/imon.c -@@ -87,7 +87,6 @@ static ssize_t lcd_write(struct file *file, const char *buf, - struct imon_context { - struct device *dev; - struct ir_dev_props *props; -- struct ir_input_dev *ir; - /* Newer devices have two interfaces */ - struct usb_device *usbdev_intf0; - struct usb_device *usbdev_intf1; -@@ -1656,7 +1655,6 @@ static struct input_dev *imon_init_idev(struct imon_context *ictx) - { - struct input_dev *idev; - struct ir_dev_props *props; -- struct ir_input_dev *ir; - int ret, i; - - idev = input_allocate_device(); -@@ -1671,12 +1669,6 @@ static struct input_dev *imon_init_idev(struct imon_context *ictx) - goto props_alloc_failed; - } - -- ir = kzalloc(sizeof(struct ir_input_dev), GFP_KERNEL); -- if (!ir) { -- dev_err(ictx->dev, "remote ir input dev allocation failed\n"); -- goto ir_dev_alloc_failed; -- } -- - snprintf(ictx->name_idev, sizeof(ictx->name_idev), - "iMON Remote (%04x:%04x)", ictx->vendor, ictx->product); - idev->name = ictx->name_idev; -@@ -1706,14 +1698,9 @@ static struct input_dev *imon_init_idev(struct imon_context *ictx) - props->change_protocol = imon_ir_change_protocol; - ictx->props = props; - -- ictx->ir = ir; -- memcpy(&ir->dev, ictx->dev, sizeof(struct device)); -- - usb_to_input_id(ictx->usbdev_intf0, &idev->id); - idev->dev.parent = ictx->dev; - -- input_set_drvdata(idev, ir); -- - ret = ir_input_register(idev, RC_MAP_IMON_PAD, props, MOD_NAME); - if (ret < 0) { - dev_err(ictx->dev, "remote input dev register failed\n"); -@@ -1723,8 +1710,6 @@ static struct input_dev *imon_init_idev(struct imon_context *ictx) - return idev; - - idev_register_failed: -- kfree(ir); --ir_dev_alloc_failed: - kfree(props); - props_alloc_failed: - input_free_device(idev); -@@ -1944,7 +1929,6 @@ static struct imon_context *imon_init_intf0(struct usb_interface *intf) - - urb_submit_failed: - ir_input_unregister(ictx->idev); -- input_free_device(ictx->idev); - idev_setup_failed: - find_endpoint_failed: - mutex_unlock(&ictx->lock); -@@ -2014,10 +1998,8 @@ static struct imon_context *imon_init_intf1(struct usb_interface *intf, - return ictx; - - urb_submit_failed: -- if (ictx->touch) { -+ if (ictx->touch) - input_unregister_device(ictx->touch); -- input_free_device(ictx->touch); -- } - touch_setup_failed: - find_endpoint_failed: - mutex_unlock(&ictx->lock); -diff --git a/drivers/media/IR/mceusb.c b/drivers/media/IR/mceusb.c -index 78bf7f7..65b0738 100644 ---- a/drivers/media/IR/mceusb.c -+++ b/drivers/media/IR/mceusb.c -@@ -228,7 +228,6 @@ static struct usb_device_id std_tx_mask_list[] = { - /* data structure for each usb transceiver */ - struct mceusb_dev { - /* ir-core bits */ -- struct ir_input_dev *irdev; - struct ir_dev_props *props; - struct ir_raw_event rawir; - -@@ -739,7 +738,7 @@ static void mceusb_dev_recv(struct urb *urb, struct pt_regs *regs) - - if (ir->send_flags == RECV_FLAG_IN_PROGRESS) { - ir->send_flags = SEND_FLAG_COMPLETE; -- dev_dbg(&ir->irdev->dev, "setup answer received %d bytes\n", -+ dev_dbg(ir->dev, "setup answer received %d bytes\n", - buf_len); - } - -@@ -861,7 +860,6 @@ static struct input_dev *mceusb_init_input_dev(struct mceusb_dev *ir) - { - struct input_dev *idev; - struct ir_dev_props *props; -- struct ir_input_dev *irdev; - struct device *dev = ir->dev; - int ret = -ENODEV; - -@@ -878,12 +876,6 @@ static struct input_dev *mceusb_init_input_dev(struct mceusb_dev *ir) - goto props_alloc_failed; - } - -- irdev = kzalloc(sizeof(struct ir_input_dev), GFP_KERNEL); -- if (!irdev) { -- dev_err(dev, "remote ir input dev allocation failed\n"); -- goto ir_dev_alloc_failed; -- } -- - snprintf(ir->name, sizeof(ir->name), "Media Center Ed. eHome " - "Infrared Remote Transceiver (%04x:%04x)", - le16_to_cpu(ir->usbdev->descriptor.idVendor), -@@ -902,9 +894,6 @@ static struct input_dev *mceusb_init_input_dev(struct mceusb_dev *ir) - props->tx_ir = mceusb_tx_ir; - - ir->props = props; -- ir->irdev = irdev; -- -- input_set_drvdata(idev, irdev); - - ret = ir_input_register(idev, RC_MAP_RC6_MCE, props, DRIVER_NAME); - if (ret < 0) { -@@ -915,8 +904,6 @@ static struct input_dev *mceusb_init_input_dev(struct mceusb_dev *ir) - return idev; - - irdev_failed: -- kfree(irdev); --ir_dev_alloc_failed: - kfree(props); - props_alloc_failed: - input_free_device(idev); |