V4L/DVB (7320): pvrusb2: Eliminate timer race during tear-down
authorMike Isely <isely@pobox.com>
Tue, 22 Apr 2008 17:45:45 +0000 (14:45 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Thu, 24 Apr 2008 17:07:48 +0000 (14:07 -0300)
commit8f59100a42576c49e2170e9dc04f8b7ac922a74d
tree022033f2444f4d07d1f2c2804f79969acf8f6f84
parentc4a8828ddbf5fb445d2679ab006d5743540fc41a
V4L/DVB (7320): pvrusb2: Eliminate timer race during tear-down

The pvrusb2 tear-down logic was clearing two timers before stopping
its internal work queue.  That left a tiny window open where the work
queue might run after the timers are stopped, possibly starting them
again.  This could lead to dangling pointers and an oops.  Solution:
Kill the work queue first, then delete the timers.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/pvrusb2/pvrusb2-hdw.c