On 07/15/2016 08:38 PM, Charles Gong wrote:
"SYSRQ + J" triggers a call to emergency_thaw_all(). Currently, this is an
infinite loop. Once we trigger it, we'll need to do a hard power-cycle. There
are users reporting this bug from 2012 to 2016, for example, at
https://bugzilla.kernel.org/show_bug.cgi?id=47741.
This happens because thaw_bdev() fails to return -EINVAL in the non-frozen case,
and I fixed it so that do_one_thaw() can recognize this case and quit from
looping. I checked that none of the other thaw_bdev() callers check the return
value.
Hi Charles,
Can you please resend this without the hunks that change only
whitespace? Looks like your editor was properly killing off trailing
whitespace, but that's not related to your fix.
Also, please reference the commit where the regression was introduced:
commit 4504230a71566785a05d3e6b53fa1ee071b864eb
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Aug 3 23:28:35 2009 +0200
freeze_bdev: grab active reference to frozen superblocks
Then you can add:
Reviewed-by: Chris Mason <clm@xxxxxx>
Thanks!
-chris
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html