Re: [RFC PATCH 1/2] ext4: Fix possible deadlock with local interrupts disabled and page-draining IPI

From: Nikolay Borisov
Date: Fri Oct 09 2015 - 03:26:16 EST




On 10/09/2015 10:19 AM, Hillf Danton wrote:
>> @@ -109,8 +109,8 @@ static void ext4_finish_bio(struct bio *bio)
>> if (bio->bi_error)
>> buffer_io_error(bh);
>> } while ((bh = bh->b_this_page) != head);
>> - bit_spin_unlock(BH_Uptodate_Lock, &head->b_state);
>> local_irq_restore(flags);
>
> What if it takes 100ms to unlock after IRQ restored?

I'm not sure I understand in what direction you are going? Care to
elaborate?

>> + bit_spin_unlock(BH_Uptodate_Lock, &head->b_state);
>> if (!under_io) {
>> #ifdef CONFIG_EXT4_FS_ENCRYPTION
>> if (ctx)
>> --
>> 2.5.0
>
--
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/