Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756957Ab3EaVDN (ORCPT ); Fri, 31 May 2013 17:03:13 -0400 Received: from relay1.sgi.com ([192.48.179.29]:40991 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754217Ab3EaVDI (ORCPT ); Fri, 31 May 2013 17:03:08 -0400 To: torvalds@linux-foundation.org Subject: [GIT PULL] XFS fixes #2 for 3.10-rc4 Cc: akpm@linux-foundation.org, linux-kernel@vger.kernel.org, xfs@oss.sgi.com Message-Id: <20130531210303.EDAE1500B4B@whiskey.americas.sgi.com> Date: Fri, 31 May 2013 16:03:03 -0500 (CDT) From: bpm@sgi.com (Ben Myers) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3039 Lines: 66 Hi Linus, Please pull these fixes for XFS. Here are several fixes that are relevant on CRC enabled XFS filesystems. They are followed by a rework of the remote attribute code so that each block of the attribute contains a header with a CRC. Previously there was a CRC header per extent in the remote attribute code, but this was untenable because it was not possible to know how many extents would be allocated for the attribute until after the allocation has completed, due to the fragmentation of free space. This became complicated because the size of the headers needs to be added to the length of the payload to get the overall length required for the allocation. With a header per block, things are less complicated at the cost of a little space. I would have preferred to defer this and the rest of the CRC queue to 3.11 to mitigate risk for existing non-crc users in 3.10. Doing so would require setting a feature bit for the on-disk changes, and so I have been pressured into sending this pull request by Eric Sandeen and David Chinner from Red Hat. I'll send another pull request or two with the rest of the CRC queue next week. Thanks, Ben The following changes since commit e400d27d1690d609f203f2d7d8efebc98cbc3089: xfs: fix dir3 freespace block corruption (2013-05-30 17:22:54 -0500) are available in the git repository at: git://oss.sgi.com/xfs/xfs tags/for-linus-v3.10-rc4-crc-xattr-fixes for you to fetch changes up to 7bc0dc271e494e12be3afd3c6431e5216347c624: xfs: rework remote attr CRCs (2013-05-30 17:26:31 -0500) ---------------------------------------------------------------- xfs: extended attribute fixes for CRCs - Remove assert on count of remote attribute CRC headers - Fix the number of blocks read in for remote attributes - Zero remote attribute tails properly - Fix mapping of remote attribute buffers to have correct length - initialize temp leaf properly in xfs_attr3_leaf_unbalance, and xfs_attr3_leaf_compact - Rework remote atttributes to have a header per block ---------------------------------------------------------------- Dave Chinner (7): xfs: remote attribute allocation may be contiguous xfs: remote attribute read too short xfs: remote attribute tail zeroing does too much xfs: correctly map remote attr buffers during removal xfs: fully initialise temp leaf in xfs_attr3_leaf_unbalance xfs: fully initialise temp leaf in xfs_attr3_leaf_compact xfs: rework remote attr CRCs fs/xfs/xfs_attr_leaf.c | 71 ++++++--- fs/xfs/xfs_attr_remote.c | 408 +++++++++++++++++++++++++++++------------------ fs/xfs/xfs_attr_remote.h | 10 ++ fs/xfs/xfs_buf.c | 1 + 4 files changed, 307 insertions(+), 183 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/