freezer: do not sync filesystems from freeze_processes
The syncing of filesystems from within the freezer is generally not needed. Also, if there's an ext3 filesystem loopback-mounted from a FUSE one, the syncing results in writes to it and deadlocks. Similarly, it will deadlock if FUSE implements sync. Change freeze_processes() so that it doesn't execute sys_sync() and make the suspend and hibernation code path sync filesystems independently of the freezer. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Pavel Machek <pavel@ucw.cz> Cc: Nigel Cunningham <nigel@nigel.suspend2.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
2776365370
commit
232b143280
@@ -191,7 +191,6 @@ int freeze_processes(void)
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
sys_sync();
|
||||
error = try_to_freeze_tasks(FREEZER_KERNEL_THREADS);
|
||||
if (error)
|
||||
return error;
|
||||
|
Reference in New Issue
Block a user