Skip to content
Snippets Groups Projects
  • Mateusz Guzik's avatar
    08fdc8a0
    buffer.c: call thaw_super during emergency thaw · 08fdc8a0
    Mateusz Guzik authored
    
    There are 2 distinct freezing mechanisms - one operates on block
    devices and another one directly on super blocks. Both end up with the
    same result, but thaw of only one of these does not thaw the other.
    
    In particular fsfreeze --freeze uses the ioctl variant going to the
    super block. Since prior to this patch emergency thaw was not doing
    a relevant thaw, filesystems frozen with this method remained
    unaffected.
    
    The patch is a hack which adds blind unfreezing.
    
    In order to keep the super block write-locked the whole time the code
    is shuffled around and the newly introduced __iterate_supers is
    employed.
    
    Signed-off-by: default avatarMateusz Guzik <mguzik@redhat.com>
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    08fdc8a0
    History
    buffer.c: call thaw_super during emergency thaw
    Mateusz Guzik authored
    
    There are 2 distinct freezing mechanisms - one operates on block
    devices and another one directly on super blocks. Both end up with the
    same result, but thaw of only one of these does not thaw the other.
    
    In particular fsfreeze --freeze uses the ioctl variant going to the
    super block. Since prior to this patch emergency thaw was not doing
    a relevant thaw, filesystems frozen with this method remained
    unaffected.
    
    The patch is a hack which adds blind unfreezing.
    
    In order to keep the super block write-locked the whole time the code
    is shuffled around and the newly introduced __iterate_supers is
    employed.
    
    Signed-off-by: default avatarMateusz Guzik <mguzik@redhat.com>
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
Code owners
Assign users and groups as approvers for specific file changes. Learn more.