From: Mauro Carvalho Chehab Date: Sun, 2 Mar 2014 11:20:54 +0000 (-0300) Subject: upstream: [media] em28xx_dvb: only call the software filter if data X-Git-Tag: submit/tizen/20141121.110247~1414 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9d2cf2c18e5a0b1a84b3a2f62973200a9bd2b475;p=platform%2Fkernel%2Flinux-3.10.git upstream: [media] em28xx_dvb: only call the software filter if data Several URBs will be simply not filled. Don't call the DVB core software filter for those empty URBs. Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/usb/em28xx/em28xx-dvb.c b/drivers/media/usb/em28xx/em28xx-dvb.c index f3d27c4..075890f 100644 --- a/drivers/media/usb/em28xx/em28xx-dvb.c +++ b/drivers/media/usb/em28xx/em28xx-dvb.c @@ -158,6 +158,8 @@ static inline int em28xx_dvb_urb_data_copy(struct em28xx *dev, struct urb *urb) if (urb->status != -EPROTO) continue; } + if (!urb->actual_length) + continue; dvb_dmx_swfilter(&dev->dvb->demux, urb->transfer_buffer, urb->actual_length); } else { @@ -167,6 +169,8 @@ static inline int em28xx_dvb_urb_data_copy(struct em28xx *dev, struct urb *urb) if (urb->iso_frame_desc[i].status != -EPROTO) continue; } + if (!urb->iso_frame_desc[i].actual_length) + continue; dvb_dmx_swfilter(&dev->dvb->demux, urb->transfer_buffer + urb->iso_frame_desc[i].offset,