Re: [PATCH] block: avoid infinite loop in get_task_io_context()

From: Jens Axboe
Date: Thu May 31 2012 - 06:48:44 EST


On 05/31/2012 12:38 PM, Eric Dumazet wrote:
> From: Eric Dumazet <edumazet@xxxxxxxxxx>
>
> On Wed, 2012-05-30 at 22:35 +0200, Eric Dumazet wrote:
>> On Wed, 2012-05-30 at 21:08 +0200, Eric Dumazet wrote:
>>> On Wed, 2012-05-30 at 20:55 +0200, Jens Axboe wrote:
>>>> On 05/30/2012 08:33 PM, Eric Dumazet wrote:
>>>>> On Wed, 2012-05-30 at 14:54 +0200, Jens Axboe wrote:
>>>>>> Hi Linus,
>>>>>>
>>>>>> On top of the for-3.5/core pull request, here are the driver related
>>>>>> changes for 3.5. It contains:
>>>>>
>>>>> Hi Jens
>>>>>
>>>>> Not sure if this is related, but latest Linus tree cannot boot anymore
>>>>> here...
>>>>>
>>>>> BUG: soft lockup - CPU#3 stuck for 22s ! [mountall.1603]
>>>>
>>>> Hrmpf, can you attach your .config?
>>>>
>>>
>>> I can do a bisection pretty fast I think
>>
>> Not sure if bisection was good, but result is :
>
> Bisection gave nothing, because its an old bug ?
>
> Following patch cures it.
>
> [PATCH] block: avoid infinite loop in get_task_io_context()
>
> Calling get_task_io_context() on a exiting task which isn't %current can
> loop forever. This triggers at boot time on my dev machine.
>
> BUG: soft lockup - CPU#3 stuck for 22s ! [mountall.1603]

Eric, do you have a task trace to go with this lockup, where task !=
current?

In any case, it is a legit bug fix. I have applied it.

--
Jens Axboe

--
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/