From 2621384c29039ada4011278c7ff37399e0834f69 Mon Sep 17 00:00:00 2001 From: johann <johann> Date: Fri, 14 Sep 2007 12:57:01 +0000 Subject: [PATCH] Branch b1_6 b=13181 i=alex i=nikita Don't take the BKL in fsfilt_ext3_setattr() for 2.6 kernels. It causes scheduling issues when removing large files. --- lustre/ChangeLog | 8 ++++++++ lustre/lvfs/fsfilt_ext3.c | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/lustre/ChangeLog b/lustre/ChangeLog index b684804e68..04f281c5e6 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -49,6 +49,14 @@ Bugzilla : 13596 Description: MDS hang after unclean shutdown of lots of clients Details : Never resend AST requests. +Severity : normal +Frequency : when removing large files +Bugzilla : 13181 +Description: scheduling issue during removal of large Lustre files +Details : Don't take the BKL in fsfilt_ext3_setattr() for 2.6 kernels. + It causes scheduling issues when removing large files (17TB in the + present case). + -------------------------------------------------------------------------------- 2007-09-27 Cluster File Systems, Inc. <info@clusterfs.com> diff --git a/lustre/lvfs/fsfilt_ext3.c b/lustre/lvfs/fsfilt_ext3.c index 1e2908bc15..6737ed4aaa 100644 --- a/lustre/lvfs/fsfilt_ext3.c +++ b/lustre/lvfs/fsfilt_ext3.c @@ -521,7 +521,7 @@ static int fsfilt_ext3_setattr(struct dentry *dentry, void *handle, struct inode *inode = dentry->d_inode; int rc = 0; - lock_kernel(); + lock_24kernel(); /* Avoid marking the inode dirty on the superblock list unnecessarily. * We are already writing the inode to disk as part of this @@ -573,7 +573,7 @@ static int fsfilt_ext3_setattr(struct dentry *dentry, void *handle, } out: - unlock_kernel(); + unlock_24kernel(); RETURN(rc); } -- GitLab