Re: [BUG] fs: ext4: possible ABBA deadlock in ext4_inline_data_truncate() and ext4_punch_hole()

From: Theodore Y. Ts'o
Date: Fri Dec 10 2021 - 13:05:11 EST


On Fri, Dec 10, 2021 at 10:03:37AM +0800, Jia-Ju Bai wrote:
>
> Thank you very much for the detailed explanation!
> I will improve my static analysis tool for this point.

I'm not sure it will be possible to programatically detect why the
ABBA deadlock isn't possible without having the static analyzer having
a semantic understanding how the code works (so it can understand that
that code path which leads to the ABBA deadlock won't get executed).

It may very well be that being able to understand why the ABBA
deadlock can't happen in that case is equivalent to solving the
halting problem. But if you do come up with a clever way of improving
your static analysis tool, I'll be excited to see it!

Cheers,

- Ted