diff --git a/[refs] b/[refs] index 2e7cc10c4b99..637873228810 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9dac920708abb2981d02e6922fd797ef388db5ce +refs/heads/master: 14f0915464f91574652afa95850e642abd205adc diff --git a/trunk/drivers/staging/tm6000/tm6000-video.c b/trunk/drivers/staging/tm6000/tm6000-video.c index ba9cd2470174..bef6023424af 100644 --- a/trunk/drivers/staging/tm6000/tm6000-video.c +++ b/trunk/drivers/staging/tm6000/tm6000-video.c @@ -513,9 +513,21 @@ static void tm6000_irq_callback(struct urb *urb) struct tm6000_core *dev = container_of(dma_q, struct tm6000_core, vidq); int i; - if (!dev) + switch (urb->status) { + case 0: + case -ETIMEDOUT: + break; + + case -ECONNRESET: + case -ENOENT: + case -ESHUTDOWN: return; + default: + tm6000_err("urb completion error %d.\n", urb->status); + break; + } + spin_lock(&dev->slock); tm6000_isoc_copy(urb); spin_unlock(&dev->slock);