• S
    GFS2: Fix inode allocation error path · 40ac218f
    Steven Whitehouse 提交于
    If we have got far enough through the inode allocation code
    path that an inode has already been allocated, then we must
    call iput to dispose of it, if an error occurs during a
    later part of the process. This will always be the final iput
    since there will be no other references to the inode.
    
    Unlike when the inode has been unlinked, its block state will
    be GFS2_BLKST_INODE rather than GFS2_BLKST_UNLINKED so we need
    to skip the test in ->evict_inode() for this one case in order
    to ensure that it will be deallocated correctly. This patch adds
    a new flag in order to ensure that this will happen correctly.
    Signed-off-by: NSteven Whitehouse <swhiteho@redhat.com>
    40ac218f
inode.c 43.1 KB