lkml.org 
[lkml]   [2009]   [Dec]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[83/90] ext4: fix incorrect block reservation on quota transfer.
    2.6.31-stable review patch.  If anyone has any objections, please let us know.

    ------------------
    (cherry picked from commit 194074acacebc169ded90a4657193f5180015051)

    Inside ->setattr() call both ATTR_UID and ATTR_GID may be valid
    This means that we may end-up with transferring all quotas. Add
    we have to reserve QUOTA_DEL_BLOCKS for all quotas, as we do in
    case of QUOTA_INIT_BLOCKS.

    Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
    Reviewed-by: Mingming Cao <cmm@us.ibm.com>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    ---
    fs/ext4/inode.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/fs/ext4/inode.c
    +++ b/fs/ext4/inode.c
    @@ -5222,7 +5222,7 @@ int ext4_setattr(struct dentry *dentry,
    /* (user+group)*(old+new) structure, inode write (sb,
    * inode block, ? - but truncate inode update has it) */
    handle = ext4_journal_start(inode, (EXT4_MAXQUOTAS_INIT_BLOCKS(inode->i_sb)+
    - EXT4_QUOTA_DEL_BLOCKS(inode->i_sb))+3);
    + EXT4_MAXQUOTAS_DEL_BLOCKS(inode->i_sb))+3);
    if (IS_ERR(handle)) {
    error = PTR_ERR(handle);
    goto err_out;



    \
     
     \ /
      Last update: 2009-12-11 05:47    [W:0.019 / U:0.172 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site