linux/fs/ecryptfs
Tyler Hicks f8f484d1b6 eCryptfs: Add getattr function
The i_blocks field of an eCryptfs inode cannot be trusted, but
generic_fillattr() uses it to instantiate the blocks field of a stat()
syscall when a filesystem doesn't implement its own getattr().  Users
have noticed that the output of du is incorrect on newly created files.

This patch creates ecryptfs_getattr() which calls into the lower
filesystem's getattr() so that eCryptfs can use its kstat.blocks value
after calling generic_fillattr().  It is important to note that the
block count includes the eCryptfs metadata stored in the beginning of
the lower file plus any padding used to fill an extent before
encryption.

https://bugs.launchpad.net/ecryptfs/+bug/390833

Reported-by: Dominic Sacré <dominic.sacre@gmx.de>
Signed-off-by: Tyler Hicks <tyhicks@linux.vnet.ibm.com>
2010-01-19 22:32:09 -06:00
..
crypto.c eCryptfs: Propagate vfs_read and vfs_write return codes 2009-09-23 09:10:34 -05:00
debug.c
dentry.c fsstack/ecryptfs: remove unused get_nlinks param to fsstack_copy_attr_all 2009-12-17 10:57:30 -05:00
ecryptfs_kernel.h const: mark remaining address_space_operations const 2009-09-22 07:17:24 -07:00
file.c eCryptfs: Fix data types (int/size_t) 2009-01-06 15:59:22 -08:00
inode.c eCryptfs: Add getattr function 2010-01-19 22:32:09 -06:00
Kconfig eCryptfs: Remove Kconfig NET dependency and select MD5 2009-10-08 11:31:36 -05:00
keystore.c eCryptfs: Validate global auth tok keys 2009-09-23 09:10:32 -05:00
kthread.c eCryptfs: Check for O_RDONLY lower inodes when opening lower files 2009-09-23 09:10:32 -05:00
main.c fsstack/ecryptfs: remove unused get_nlinks param to fsstack_copy_attr_all 2009-12-17 10:57:30 -05:00
Makefile
messaging.c eCryptfs: NULL pointer dereference in ecryptfs_send_miscdev() 2009-04-22 03:54:13 -05:00
miscdev.c eCryptfs: NULL pointer dereference in ecryptfs_send_miscdev() 2009-04-22 03:54:13 -05:00
mmap.c eCryptfs: Propagate vfs_read and vfs_write return codes 2009-09-23 09:10:34 -05:00
read_write.c eCryptfs: Propagate vfs_read and vfs_write return codes 2009-09-23 09:10:34 -05:00
super.c ecryptfs: Remove unneeded locking that triggers lockdep false positives 2009-09-23 09:10:30 -05:00