From 4b9e64aec7cfdf859f1f931e1ee44056db050bb9 Mon Sep 17 00:00:00 2001 From: Vladimir Saveliev Date: Tue, 29 Oct 2013 20:01:23 +0400 Subject: [PATCH] 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 --- .../kernel_patches/patches/rhel6.3/ext4-max-dir-size.patch | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) 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; -- 1.8.3.1