[PATCH 0/2] fix emergency unfreezing

From: Mateusz Guzik
Date: Tue Oct 03 2017 - 12:18:24 EST


Filesystems frozen with fsfreeze --freeze are not getting thawed with
sysrq j (or echo j > /proc/sysrq-trigger). Thawing only deals with bdev
part, does not do anything about fsfreeze.

I went for the easiest fix possible: just thaw the super block.
Doing it requires a little bit of refactoring in order to keep the sb
locked the whole time.

The first patch moves sb iteration found in emergency remount to a
dedicated func for code reuse. This patch patch is a no-op.

The second employs factored out code to do both bdev and sb thaws.

Mateusz Guzik (2):
vfs: factor sb iteration out of do_emergency_remount
buffer.c: call thaw_super during emergency thaw

fs/buffer.c | 25 +------------
fs/super.c | 105 +++++++++++++++++++++++++++++++++++++++--------------
include/linux/fs.h | 1 +
3 files changed, 80 insertions(+), 51 deletions(-)

--
1.8.3.1