From patchwork Fri May 21 23:17:46 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Leann Ogasawara X-Patchwork-Id: 53219 X-Patchwork-Delegate: leann.ogasawara@canonical.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from chlorine.canonical.com (chlorine.canonical.com [91.189.94.204]) by ozlabs.org (Postfix) with ESMTP id 95E5CB7D30 for ; Sat, 22 May 2010 09:18:11 +1000 (EST) Received: from localhost ([127.0.0.1] helo=chlorine.canonical.com) by chlorine.canonical.com with esmtp (Exim 4.69) (envelope-from ) id 1OFbTj-0004s6-Gq; Sat, 22 May 2010 00:18:07 +0100 Received: from adelie.canonical.com ([91.189.90.139]) by chlorine.canonical.com with esmtp (Exim 4.69) (envelope-from ) id 1OFbTh-0004rD-3D for kernel-team@lists.ubuntu.com; Sat, 22 May 2010 00:18:05 +0100 Received: from hutte.canonical.com ([91.189.90.181]) by adelie.canonical.com with esmtp (Exim 4.69 #1 (Debian)) id 1OFbTg-0008WR-Ua for ; Sat, 22 May 2010 00:18:05 +0100 Received: from c-76-105-148-120.hsd1.or.comcast.net ([76.105.148.120] helo=[192.168.1.4]) by hutte.canonical.com with esmtpsa (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.69) (envelope-from ) id 1OFbTg-0006hl-HF for kernel-team@lists.ubuntu.com; Sat, 22 May 2010 00:18:04 +0100 Subject: [PATCH 04/13] Revert "UBUNTU: SAUCE: sync before umount to reduce time taken by ext4 umount" From: Leann Ogasawara To: kernel-team In-Reply-To: <1274483333.19284.3264.camel@emiko> References: <1274483333.19284.3264.camel@emiko> Date: Fri, 21 May 2010 16:17:46 -0700 Message-ID: <1274483866.19284.3321.camel@emiko> Mime-Version: 1.0 X-Mailer: Evolution 2.28.3 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.9 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kernel-team-bounces@lists.ubuntu.com Errors-To: kernel-team-bounces@lists.ubuntu.com >From d64d436800f34cbfedbb1b65079195b6bc445a1f Mon Sep 17 00:00:00 2001 From: Leann Ogasawara Date: Fri, 21 May 2010 14:31:13 -0700 Subject: [PATCH 04/13] Revert "UBUNTU: SAUCE: sync before umount to reduce time taken by ext4 umount" This reverts commit 0e6224656c7bb48af82a28f702af1e475bf0eea5. This was a temporary fix for http://launchpad.net/bugs/543617 and resulted in negative side affects performance wise. The proper fix has been submitted for 2.6.35 - http://lkml.org/lkml/2010/5/21/361 writeback: fix WB_SYNC_NONE writeback from umount writeback: ensure that WB_SYNC_NONE writeback with sb pinned is sync Signed-off-by: Leann Ogasawara --- fs/namespace.c | 7 ------- fs/sync.c | 2 +- include/linux/fs.h | 1 - 3 files changed, 1 insertions(+), 9 deletions(-) diff --git a/fs/namespace.c b/fs/namespace.c index 6c52c5c..118e0c3 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -33,7 +33,6 @@ #include #include "pnode.h" #include "internal.h" -#include #define HASH_SHIFT ilog2(PAGE_SIZE / sizeof(struct list_head)) #define HASH_SIZE (1UL << HASH_SHIFT) @@ -1159,12 +1158,6 @@ SYSCALL_DEFINE2(umount, char __user *, name, int, flags) if (!capable(CAP_SYS_ADMIN)) goto dput_and_out; - /* Temporary solution to fix long umount periods till - * we find the real fix - */ - sync_filesystems(0); - sync_filesystems(1); - retval = do_umount(path.mnt, flags); dput_and_out: /* we mustn't call path_put() as that would clear mnt_expiry_mark */ diff --git a/fs/sync.c b/fs/sync.c index 668a85f..92b2281 100644 --- a/fs/sync.c +++ b/fs/sync.c @@ -91,7 +91,7 @@ EXPORT_SYMBOL_GPL(sync_filesystem); * flags again, which will cause process A to resync everything. Fix that with * a local mutex. */ -void sync_filesystems(int wait) +static void sync_filesystems(int wait) { struct super_block *sb; static DEFINE_MUTEX(mutex); diff --git a/include/linux/fs.h b/include/linux/fs.h index 7258c32..44f35ae 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -1968,7 +1968,6 @@ static inline int thaw_bdev(struct block_device *bdev, struct super_block *sb) return 0; } #endif -extern void sync_filesystems(int wait); extern int sync_filesystem(struct super_block *); extern const struct file_operations def_blk_fops; extern const struct file_operations def_chr_fops;