X-Spam-Checker-Version: SpamAssassin 3.3.0-r574664 (2007-09-11) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.0-r574664 Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.12.11.20060308/8.12.11/SuSE Linux 0.7) with ESMTP id m8DDqanP010527 for ; Sat, 13 Sep 2008 06:52:36 -0700 X-ASG-Debug-ID: 1221314044-1a0b02470001-NocioJ X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from ipmail05.adl2.internode.on.net (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id EDAD81ADDD49 for ; Sat, 13 Sep 2008 06:54:06 -0700 (PDT) Received: from ipmail05.adl2.internode.on.net (ipmail05.adl2.internode.on.net [203.16.214.145]) by cuda.sgi.com with ESMTP id HDiES7KzeAW0Aenx for ; Sat, 13 Sep 2008 06:54:06 -0700 (PDT) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AjkFAKthy0h5LD0iXWdsb2JhbACSYx6hV4Fk X-IronPort-AV: E=Sophos;i="4.32,394,1217773800"; d="scan'208";a="205025178" Received: from ppp121-44-61-34.lns10.syd7.internode.on.net (HELO disturbed) ([121.44.61.34]) by ipmail05.adl2.internode.on.net with ESMTP; 13 Sep 2008 23:24:02 +0930 Received: from dave by disturbed with local (Exim 4.69) (envelope-from ) id 1KeVZY-0007O5-SZ for xfs@oss.sgi.com; Sat, 13 Sep 2008 23:54:00 +1000 From: Dave Chinner To: xfs@oss.sgi.com X-ASG-Orig-Subj: [PATCH 0/6] XFS: replace the mount inode list with radix tree traversals V4 Subject: [PATCH 0/6] XFS: replace the mount inode list with radix tree traversals V4 Date: Sat, 13 Sep 2008 23:53:54 +1000 Message-Id: <1221314040-27990-1-git-send-email-david@fromorbit.com> X-Mailer: git-send-email 1.5.6 X-Barracuda-Connect: ipmail05.adl2.internode.on.net[203.16.214.145] X-Barracuda-Start-Time: 1221314046 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0323 1.0000 -1.8121 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.81 X-Barracuda-Spam-Status: No, SCORE=-1.81 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.1.5456 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- The list of all inodes on a mount is superfluous. We can traverse all inodes now by walking the per-AG inode radix trees without needing a separate list. This enables us to remove a bunch of complex list traversal code and remove another two pointers from the xfs_inode. Also, by replacing the sync traversal with an ascending inode number traversal, we will issue better inode I/O patterns for writeback triggered by xfssyncd or unmount. Before we make this change, move all the relevant sync code into it's own file in the linux-2.6/ directory. This aggregates VFS specific sync interfacing in the one file and will allow all the subsequent change history to be associated with this file so it is easy to find in future. Version 4: o revert xfs_syncsub -> xfs_sync change in xfs_quiesce_fs and rediff patch series