Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes

* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:
GFS2: Skip check for mandatory locks when unlocking
GFS2: Allow the number of committed revokes to temporarily be negative
GFS2: do not select QUOTA

+3 -5
-1
fs/gfs2/Kconfig
··· 8 8 select FS_POSIX_ACL 9 9 select CRC32 10 10 select SLOW_WORK 11 - select QUOTA 12 11 select QUOTACTL 13 12 help 14 13 A cluster filesystem.
+1 -1
fs/gfs2/file.c
··· 640 640 641 641 if (!(fl->fl_flags & FL_POSIX)) 642 642 return -ENOLCK; 643 - if (__mandatory_lock(&ip->i_inode)) 643 + if (__mandatory_lock(&ip->i_inode) && fl->fl_type != F_UNLCK) 644 644 return -ENOLCK; 645 645 646 646 if (cmd == F_CANCELLK) {
+1 -1
fs/gfs2/incore.h
··· 616 616 unsigned int sd_log_blks_reserved; 617 617 unsigned int sd_log_commited_buf; 618 618 unsigned int sd_log_commited_databuf; 619 - unsigned int sd_log_commited_revoke; 619 + int sd_log_commited_revoke; 620 620 621 621 unsigned int sd_log_num_buf; 622 622 unsigned int sd_log_num_revoke;
+1 -2
fs/gfs2/log.c
··· 417 417 databufhdrs_needed = (sdp->sd_log_commited_databuf + 418 418 (dbuf_limit - 1)) / dbuf_limit; 419 419 420 - if (sdp->sd_log_commited_revoke) 420 + if (sdp->sd_log_commited_revoke > 0) 421 421 revokes = gfs2_struct2blk(sdp, sdp->sd_log_commited_revoke, 422 422 sizeof(u64)); 423 423 ··· 790 790 gfs2_assert_withdraw(sdp, (((int)sdp->sd_log_commited_buf) >= 0) || 791 791 (((int)sdp->sd_log_commited_databuf) >= 0)); 792 792 sdp->sd_log_commited_revoke += tr->tr_num_revoke - tr->tr_num_revoke_rm; 793 - gfs2_assert_withdraw(sdp, ((int)sdp->sd_log_commited_revoke) >= 0); 794 793 reserved = calc_reserved(sdp); 795 794 gfs2_assert_withdraw(sdp, sdp->sd_log_blks_reserved + tr->tr_reserved >= reserved); 796 795 unused = sdp->sd_log_blks_reserved - reserved + tr->tr_reserved;