From: Vladimir Saveliev Date: Tue, 29 Oct 2013 16:01:23 +0000 (+0400) Subject: LU-2479 ldiskfs: do not check dir max size for regular files X-Git-Tag: 2.5.51~6 X-Git-Url: https://git.whamcloud.com/gitweb?a=commitdiff_plain;h=4b9e64aec7cfdf859f1f931e1ee44056db050bb9;p=fs%2Flustre-release.git LU-2479 ldiskfs: do not check dir max size for regular files ldiskfs_append() is used not only to extend directory but also to maintain iam container. In later case ldiskfs_append() should not check for max directory size. The iam container is distunguished as regular file. Signed-off-by: Vladimir Saveliev Change-Id: I205b0b1149d7bd477b3965ce68a546dfd9dc6a6f Reviewed-on: http://review.whamcloud.com/8137 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Alexey Lyashkov Reviewed-by: Andreas Dilger --- diff --git a/ldiskfs/kernel_patches/patches/rhel6.3/ext4-max-dir-size.patch b/ldiskfs/kernel_patches/patches/rhel6.3/ext4-max-dir-size.patch index 6741924..1820d69 100644 --- a/ldiskfs/kernel_patches/patches/rhel6.3/ext4-max-dir-size.patch +++ b/ldiskfs/kernel_patches/patches/rhel6.3/ext4-max-dir-size.patch @@ -1,12 +1,13 @@ -Index: linux-2.6.32-el6-beta/fs/ext4/namei.c +Index: linux-stage/fs/ext4/namei.c =================================================================== ---- linux-2.6.32-el6-beta/fs/ext4/namei.c -+++ linux-2.6.32-el6-beta/fs/ext4/namei.c -@@ -59,6 +59,14 @@ static struct buffer_head *ext4_append(h +--- linux-stage.orig/fs/ext4/namei.c ++++ linux-stage/fs/ext4/namei.c +@@ -60,6 +60,15 @@ struct buffer_head *ext4_append(handle_t * have to be serialized -bzzz */ down(&ei->i_append_sem); -+ if (unlikely(EXT4_SB(inode->i_sb)->s_max_dir_size && ++ if (unlikely(S_ISDIR(inode->i_mode) && ++ EXT4_SB(inode->i_sb)->s_max_dir_size && + (inode->i_size >= + EXT4_SB(inode->i_sb)->s_max_dir_size))) { + *err = -ENOSPC;