1FREEZE_SUPER(9)                  The Linux VFS                 FREEZE_SUPER(9)
2
3
4

NAME

6       freeze_super - lock the filesystem and force it into a consistent state
7

SYNOPSIS

9       int freeze_super(struct super_block * sb);
10

ARGUMENTS

12       sb
13           the super to lock
14

DESCRIPTION

16       Syncs the super to make sure the filesystem is consistent and calls the
17       fs's freeze_fs. Subsequent calls to this without first thawing the fs
18       will return -EBUSY.
19
20       During this function, sb->s_writers.frozen goes through these values:
21

SB_UNFROZEN

23       File system is normal, all writes progress as usual.
24

SB_FREEZE_WRITE

26       The file system is in the process of being frozen. New writes should be
27       blocked, though page faults are still allowed. We wait for all writes
28       to complete and then proceed to the next stage.
29

SB_FREEZE_PAGEFAULT

31       Freezing continues. Now also page faults are blocked but internal fs
32       threads can still modify the filesystem (although they should not dirty
33       new pages or inodes), writeback can run etc. After waiting for all
34       running page faults we sync the filesystem which will clean all dirty
35       pages and inodes (no new dirty pages or inodes can be created when sync
36       is running).
37

SB_FREEZE_FS

39       The file system is frozen. Now all internal sources of fs modification
40       are blocked (e.g. XFS preallocation truncation on inode reclaim). This
41       is usually implemented by blocking new transactions for filesystems
42       that have them and need this additional guard. After all internal
43       writers are finished we call ->freeze_fs to finish filesystem freezing.
44       Then we transition to SB_FREEZE_COMPLETE state. This state is mostly
45       auxiliary for filesystems to verify they do not modify frozen fs.
46
47       sb->s_writers.frozen is protected by sb->s_umount.
48
50Kernel Hackers Manual 3.10         June 2019                   FREEZE_SUPER(9)
Impressum