Re: [PATCH] fs: Fix mod_timer crash when removing USB sticks

From: Paul Taysom
Date: Fri Jan 13 2012 - 10:39:25 EST


On Thu, Jan 12, 2012 at 9:42 PM, Josh Boyer <jwboyer@xxxxxxxxx> wrote:
> On Thu, Jan 12, 2012 at 4:15 PM, Paul Taysom <taysom@xxxxxxxxxxxx> wrote:
>> From: Paul Taysom <taysom@xxxxxxxxxx>
>>
>> A USB stick with a ext file system on it, would occasionally crash
>> when the stick was pulled.
>>
>> The problem was a timer was being set on the Backing Device Interface,
>> bdi, after the USB device had been removed and the bdi had been
>> unregistered. The bdi would then be later reinitialized by zeroing
>> the timer without removing from the timer from the timer queue.
>> This would eventually result in a kernel crash (NULL ptr dereference).
>
> What backtrace did you see when it crashed?  There have been a number of
> reports where sd_revalidate_disk is at the top of the backtrace and this sounds
> like it might be related.
>
> josh

I had several different crash traces some can be seen in
http://crosbug.com/24165

The reason that there are different crash traces is that the code path
to crash would just be the victim of the memory corruption caused
earlier. However, most of them had to do with setting or clearing
timers. There are additional problems related to lost I/O requests
that I'm still looking at.
-Paul
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/