• Andreas Gruenbacher's avatar
    gfs2: gfs2_setattr_size error path fix · 7336905a
    Andreas Gruenbacher authored
    When gfs2_setattr_size() fails, it calls gfs2_rs_delete(ip, NULL) to get
    rid of any reservations the inode may have.  Instead, it should pass in
    the inode's write count as the second parameter to allow
    gfs2_rs_delete() to figure out if the inode has any writers left.
    
    In a next step, there are two instances of gfs2_rs_delete(ip, NULL) left
    where we know that there can be no other users of the inode.  Replace
    those with gfs2_rs_deltree(&ip->i_res) to avoid the unnecessary write
    count check.
    
    With that, gfs2_rs_delete() is only called with the inode's actual write
    count, so get rid of the second parameter.
    
    Fixes: a097dc7e ("GFS2: Make rgrp reservations part of the gfs2_inode structure")
    Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
    7336905a
rgrp.h 3.34 KB