firewire: core: do not use del_timer_sync() in interrupt context
authorClemens Ladisch <clemens@ladisch.de>
Wed, 18 Aug 2010 13:05:02 +0000 (15:05 +0200)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Thu, 19 Aug 2010 18:28:25 +0000 (20:28 +0200)
commit2222bcb76790f4f61f39ec1514946a7593b07e02
treef479ec53c083071d70935b51eb7adab844233779
parent1bf145fed572583d4cb7c1784689a0b42c997ba6
firewire: core: do not use del_timer_sync() in interrupt context

Because we might be in interrupt context, replace del_timer_sync() with
del_timer().  If the timer is already running, we know that it will
clean up the transaction, so we do not need to do any further processing
in the normal transaction handler.

Many thanks to Yong Zhang for diagnosing this.

Reported-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/core-transaction.c