Bug 740312

Summary: xfs: avoid synchronous transactions when deleting attr blocks
Product: Red Hat Enterprise Linux 6 Reporter: Eric Sandeen <esandeen>
Component: kernelAssignee: Dave Chinner <dchinner>
Status: CLOSED ERRATA QA Contact: Boris Ranto <branto>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.2CC: branto, chellwig, dchinner, eguan
Target Milestone: rc   
Target Release: 6.2   
Hardware: Unspecified   
OS: Unspecified   
Fixed In Version: kernel-2.6.32-203.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-06 14:14:31 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Eric Sandeen 2011-09-21 15:26:48 UTC
Description of problem:

From upstream commit b73d8f7667aa82ece204a9a2e5467b54a8ecd059:

Currently xfs_attr_inactive causes a synchronous transactions if we are
removing a file that has any extents allocated to the attribute fork, and
thus makes XFS extremely slow at removing files with out of line extended
attributes. The code looks a like a relict from the days before the busy
extent list, but with the busy extent list we avoid reusing data and attr
extents that have been freed but not commited yet, so this code is just
as superflous as the synchronous transactions for data blocks.

This is a significant performance issue for RHEL since we have selinux
on by default, and this makes it more likely for other xattrs to exist out of line.

Version-Release number of selected component (if applicable):

RHEL 6.2 beta

How reproducible:

every time, with the right sized xattrs

Steps to Reproduce:
1. create a large directory tree with many files containing xattrs large enough to go out of line
2. time rm -rf the top level directory

Actual results:

significant slowness

Expected results:

reasonable quickness

Comment 1 RHEL Product and Program Management 2011-09-21 15:31:36 UTC
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux maintenance release. Product Management has 
requested further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed 
products. This request is not yet committed for inclusion in an Update release.

Comment 2 Dave Chinner 2011-09-22 22:32:25 UTC
I'll pick this one up, Eric.

Comment 4 Kyle McMartin 2011-09-28 20:39:08 UTC
Patch(es) available on kernel-2.6.32-203.el6

Comment 9 errata-xmlrpc 2011-12-06 14:14:31 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.