linux-hardened/fs/xfs
Christoph Hellwig 510792ee29 xfs: optimize the negative xattr caching
Since the addition of file capabilities every write needs to read xattrs to
check if we have any capabilities to clear.  In Linux 3.0 Andi Kleen added
a flag to cache the fact that we do not have any attributes on an inode.
Make sure to already mark a file as not having any attributes when reading
it from disk in case it doesn't even have an attribute fork.  Based on an
earlier patch from Andi Kleen.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Alex Elder <aelder@sgi.com>
2011-07-26 22:06:50 -05:00
..
linux-2.6 xfs: optimize the negative xattr caching 2011-07-26 22:06:50 -05:00
quota xfs: remove the dead QUOTADEBUG code 2011-07-13 13:43:50 +02:00
support xfs: kill support/debug.[ch] 2011-03-07 10:09:35 +11:00
Kconfig quota: Make QUOTACTL config be selected by its users 2010-10-05 12:16:37 +02:00
Makefile xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs.h xfs: remove the dead QUOTADEBUG code 2011-07-13 13:43:50 +02:00
xfs_acl.h fs: take the ACL checks to common code 2011-07-25 14:30:23 -04:00
xfs_ag.h xfs: do not discard alloc btree blocks 2011-05-24 11:17:22 -05:00
xfs_alloc.c xfs: remove variables that serve no purpose in xfs_alloc_ag_vextent_exact() 2011-07-08 11:32:51 -05:00
xfs_alloc.h xfs: do not discard alloc btree blocks 2011-05-24 11:17:22 -05:00
xfs_alloc_btree.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_alloc_btree.h
xfs_attr.c xfs: byteswap constants instead of variables 2011-07-08 14:36:05 +02:00
xfs_attr.h
xfs_attr_leaf.c xfs: byteswap constants instead of variables 2011-07-08 14:36:05 +02:00
xfs_attr_leaf.h
xfs_attr_sf.h
xfs_bit.c
xfs_bit.h
xfs_bmap.c xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_bmap.h xfs: remove the unused XFS_BMAPI_RSVBLOCKS flag 2011-05-25 10:48:36 -05:00
xfs_bmap_btree.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_bmap_btree.h
xfs_btree.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_btree.h xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_buf_item.c xfs: remove wrappers around b_iodone 2011-07-13 13:43:49 +02:00
xfs_buf_item.h xfs: use struct list_head for the buf cancel table 2010-12-16 16:05:22 -06:00
xfs_da_btree.c xfs: encapsulate a block of debug code 2011-07-26 22:05:34 -05:00
xfs_da_btree.h xfs: remove the dead XFS_DABUF_DEBUG code 2011-07-13 13:43:50 +02:00
xfs_dfrag.c xfs: cleanup duplicate initializations 2011-04-28 13:25:29 -05:00
xfs_dfrag.h
xfs_dinode.h xfs: Extend project quotas to support 32bit project ids 2010-10-18 15:08:08 -05:00
xfs_dir2.c xfs: factor out xfs_da_grow_inode_int 2011-07-13 13:43:49 +02:00
xfs_dir2.h xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_dir2_block.c xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_dir2_data.c xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_dir2_format.h xfs: cleanup struct xfs_dir2_free 2011-07-13 13:43:48 +02:00
xfs_dir2_leaf.c xfs: factor out xfs_dir2_leaf_find_stale 2011-07-13 13:43:48 +02:00
xfs_dir2_node.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-07-25 13:56:39 -07:00
xfs_dir2_priv.h xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_dir2_sf.c xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_error.c xfs: Convert remaining cmn_err() callers to new API 2011-03-07 10:08:35 +11:00
xfs_error.h xfs: kill support/debug.[ch] 2011-03-07 10:09:35 +11:00
xfs_extfree_item.c xfs: fix efi item leak on forced shutdown 2011-01-28 09:01:33 -06:00
xfs_extfree_item.h xfs: Pull EFI/EFD handling out from under the AIL lock 2010-12-20 11:59:49 +11:00
xfs_filestream.c xfs: tell lockdep about parent iolock usage in filestreams 2010-11-10 12:00:48 -06:00
xfs_filestream.h xfs: clean up filestreams helpers 2010-07-26 13:16:51 -05:00
xfs_fs.h xfs: consolidate & clarify mount sanity checks 2011-07-08 11:32:51 -05:00
xfs_fsops.c Revert "xfs: fix filesystsem freeze race in xfs_trans_alloc" 2011-07-11 10:21:03 -05:00
xfs_fsops.h xfs: ensure log covering transactions are synchronous 2011-01-11 20:28:17 -06:00
xfs_ialloc.c xfs: byteswap constants instead of variables 2011-07-08 14:36:05 +02:00
xfs_ialloc.h
xfs_ialloc_btree.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_ialloc_btree.h
xfs_iget.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_inode.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_inode.h xfs: remove i_transp 2011-07-08 14:34:47 +02:00
xfs_inode_item.c xfs: remove wrappers around b_fspriv 2011-07-13 13:43:49 +02:00
xfs_inode_item.h xfs: simplify inode to transaction joining 2010-07-26 13:16:36 -05:00
xfs_inum.h xfs: cleanup shortform directory inode number handling 2011-07-08 14:35:03 +02:00
xfs_iomap.c Revert "xfs: fix filesystsem freeze race in xfs_trans_alloc" 2011-07-11 10:21:03 -05:00
xfs_iomap.h xfs: kill xfs_iomap 2010-12-16 16:05:51 -06:00
xfs_itable.c xfs: fix variable set but not used warnings 2011-04-08 08:09:12 -05:00
xfs_itable.h xfs: remove block number from inode lookup code 2010-06-24 11:35:17 +10:00
xfs_log.c xfs: remove wrappers around b_iodone 2011-07-13 13:43:49 +02:00
xfs_log.h xfs: exact busy extent tracking 2011-04-28 13:18:04 -05:00
xfs_log_cil.c xfs: add online discard support 2011-05-24 11:17:13 -05:00
xfs_log_priv.h xfs: exact busy extent tracking 2011-04-28 13:18:04 -05:00
xfs_log_recover.c xfs: remove wrappers around b_iodone 2011-07-13 13:43:49 +02:00
xfs_log_recover.h xfs: Clean up XFS_BLI_* flag namespace 2010-05-24 10:33:39 -05:00
xfs_mount.c xfs: Remove the second parameter to xfs_sb_count() 2011-07-20 18:35:03 -05:00
xfs_mount.h xfs: Remove the second parameter to xfs_sb_count() 2011-07-20 18:35:03 -05:00
xfs_mru_cache.c xfs: convert to alloc_workqueue() 2011-02-01 11:42:43 +01:00
xfs_mru_cache.h
xfs_quota.h xfs: Convert xlog_warn to new logging interface 2011-03-07 10:01:35 +11:00
xfs_rename.c xfs: log timestamp changes to the source inode in rename 2010-12-09 17:07:02 -06:00
xfs_rtalloc.c xfs: Convert remaining cmn_err() callers to new API 2011-03-07 10:08:35 +11:00
xfs_rtalloc.h xfs: Convert remaining cmn_err() callers to new API 2011-03-07 10:08:35 +11:00
xfs_rw.c xfs: Convert remaining cmn_err() callers to new API 2011-03-07 10:08:35 +11:00
xfs_rw.h
xfs_sb.h xfs: Extend project quotas to support 32bit project ids 2010-10-18 15:08:08 -05:00
xfs_trans.c xfs: use a cursor for bulk AIL insertion 2011-07-20 18:37:20 -05:00
xfs_trans.h Revert "xfs: fix filesystsem freeze race in xfs_trans_alloc" 2011-07-11 10:21:03 -05:00
xfs_trans_ail.c xfs: convert AIL cursors to use struct list_head 2011-07-20 18:37:46 -05:00
xfs_trans_buf.c xfs: remove wrappers around b_iodone 2011-07-13 13:43:49 +02:00
xfs_trans_extfree.c xfs: Pull EFI/EFD handling out from under the AIL lock 2010-12-20 11:59:49 +11:00
xfs_trans_inode.c xfs: remove i_transp 2011-07-08 14:34:47 +02:00
xfs_trans_priv.h xfs: convert AIL cursors to use struct list_head 2011-07-20 18:37:46 -05:00
xfs_trans_space.h
xfs_types.h xfs: exact busy extent tracking 2011-04-28 13:18:04 -05:00
xfs_utils.c xfs: remove xfs_cred.h 2010-10-18 15:08:06 -05:00
xfs_utils.h xfs: remove xfs_cred.h 2010-10-18 15:08:06 -05:00
xfs_vnodeops.c xfs: return the buffer locked from xfs_buf_get_uncached 2011-07-08 14:36:25 +02:00
xfs_vnodeops.h xfs: split xfs_setattr 2011-07-08 14:34:23 +02:00