Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.

Bug 236102

Summary: Merge transactions during ->evict_inode() for gfs2
Product: [Fedora] Fedora Reporter: Steve Whitehouse <swhiteho>
Component: GFS-kernelAssignee: Steve Whitehouse <swhiteho>
Status: ASSIGNED --- QA Contact:
Severity: medium Docs Contact:
Priority: high    
Version: rawhideCC: adas, bmarzins, jdelong, rpeterso, tao
Target Milestone: ---Keywords: FutureFeature
Target Release: ---   
Hardware: All   
OS: Linux   
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 242066    
Bug Blocks: 698394, 434407    

Description Steve Whitehouse 2007-04-11 22:22:06 UTC
Deallocation of a file is broken into several transactions. It should be
possible to merge some of these. Also there is considerable scope for
optimisation by reading things ahead in various places.

Also, if it is possible to deallocate directories without having to journal all
the hash table blocks and write them back to disk, then that should also result
in a faster deallocation.

The main problem here is the indeterminate number of rgrps in which the blocks
of the inode might reside. This means that deallocation may have to be broken
into separate transactions in order not to overflow the max transaction size.

We also need to spend some time looking for other oprimisations in this code.

Comment 12 Steve Whitehouse 2011-05-16 10:45:17 UTC
->delete_inode() has become ->evict_inode() in the upstream code