eCryptfs: Propagate vfs_read and vfs_write return codes
authorTyler Hicks <tyhicks@linux.vnet.ibm.com>
Thu, 17 Sep 2009 00:04:20 +0000 (19:04 -0500)
committerTyler Hicks <tyhicks@linux.vnet.ibm.com>
Wed, 23 Sep 2009 14:10:34 +0000 (09:10 -0500)
commit96a7b9c2f5df899f302ade45cf17ad753fe130fd
tree096b67dbaad8e795344554994e28433a1e5b5de1
parent3891959846709a19f76628e33478cd85edb0e79f
eCryptfs: Propagate vfs_read and vfs_write return codes

Errors returned from vfs_read() and vfs_write() calls to the lower
filesystem were being masked as -EINVAL.  This caused some confusion to
users who saw EINVAL instead of ENOSPC when the disk was full, for
instance.

Also, the actual bytes read or written were not accessible by callers to
ecryptfs_read_lower() and ecryptfs_write_lower(), which may be useful in
some cases.  This patch updates the error handling logic where those
functions are called in order to accept positive return codes indicating
success.

Cc: Eric Sandeen <esandeen@redhat.com>
Acked-by: Serge Hallyn <serue@us.ibm.com>
Cc: ecryptfs-devel@lists.launchpad.net
Signed-off-by: Tyler Hicks <tyhicks@linux.vnet.ibm.com>
fs/ecryptfs/crypto.c
fs/ecryptfs/mmap.c
fs/ecryptfs/read_write.c