https://github.com/torvalds/linux
Revision 38e3eaeedcac75360af8a92e7b66956ec4f334e5 authored by Tyler Hicks on 03 November 2009, 20:56:06 UTC, committed by Tyler Hicks on 20 January 2010, 04:32:11 UTC
Adrian reported that mkfontscale didn't work inside of eCryptfs mounts.
Strace revealed the following:

open("./", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
fcntl64(3, F_GETFD) = 0x1 (flags FD_CLOEXEC)
open("./fonts.scale", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4
getdents(3, /* 80 entries */, 32768) = 2304
open("./.", O_RDONLY) = 5
fcntl64(5, F_SETFD, FD_CLOEXEC) = 0
fstat64(5, {st_mode=S_IFDIR|0755, st_size=16384, ...}) = 0
mmap2(NULL, 16384, PROT_READ, MAP_PRIVATE, 5, 0) = 0xb7fcf000
close(5) = 0
--- SIGBUS (Bus error) @ 0 (0) ---
+++ killed by SIGBUS +++

The mmap2() on a directory was successful, resulting in a SIGBUS
signal later.  This patch removes mmap() from the list of possible
ecryptfs_dir_fops so that mmap() isn't possible on eCryptfs directory
files.

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

Reported-by: Adrian C. <anrxc@sysphere.org>
Signed-off-by: Tyler Hicks <tyhicks@linux.vnet.ibm.com>
1 parent f8f484d
History
Tip revision: 38e3eaeedcac75360af8a92e7b66956ec4f334e5 authored by Tyler Hicks on 03 November 2009, 20:56:06 UTC
eCryptfs: Remove mmap from directory operations
Tip revision: 38e3eae
File Mode Size
basic
dtc
genksyms
kconfig
ksymoops
mod
package
rt-tester
selinux
tracing
.gitignore -rw-r--r-- 85 bytes
Kbuild.include -rw-r--r-- 9.5 KB
Lindent -rwxr-xr-x 460 bytes
Makefile -rw-r--r-- 934 bytes
Makefile.build -rw-r--r-- 11.9 KB
Makefile.clean -rw-r--r-- 3.2 KB
Makefile.fwinst -rw-r--r-- 2.0 KB
Makefile.headersinst -rw-r--r-- 3.3 KB
Makefile.host -rw-r--r-- 6.5 KB
Makefile.lib -rw-r--r-- 9.0 KB
Makefile.modbuiltin -rw-r--r-- 1.7 KB
Makefile.modinst -rw-r--r-- 1.0 KB
Makefile.modpost -rw-r--r-- 5.0 KB
bin2c.c -rw-r--r-- 702 bytes
binoffset.c -rw-r--r-- 3.9 KB
bloat-o-meter -rwxr-xr-x 1.7 KB
bootgraph.pl -rw-r--r-- 5.6 KB
checkincludes.pl -rwxr-xr-x 1.7 KB
checkkconfigsymbols.sh -rwxr-xr-x 1.8 KB
checkpatch.pl -rwxr-xr-x 71.9 KB
checkstack.pl -rwxr-xr-x 5.2 KB
checksyscalls.sh -rwxr-xr-x 5.5 KB
checkversion.pl -rwxr-xr-x 1.8 KB
cleanfile -rwxr-xr-x 3.4 KB
cleanpatch -rwxr-xr-x 5.0 KB
config -rwxr-xr-x 2.6 KB
conmakehash.c -rw-r--r-- 6.0 KB
decodecode -rwxr-xr-x 1.7 KB
diffconfig -rwxr-xr-x 3.6 KB
export_report.pl -rw-r--r-- 4.2 KB
extract-ikconfig -rwxr-xr-x 1.9 KB
gcc-version.sh -rw-r--r-- 819 bytes
gcc-x86_32-has-stack-protector.sh -rw-r--r-- 183 bytes
gcc-x86_64-has-stack-protector.sh -rw-r--r-- 199 bytes
gen_initramfs_list.sh -rw-r--r-- 7.0 KB
get_maintainer.pl -rwxr-xr-x 29.6 KB
gfp-translate -rw-r--r-- 1.5 KB
headerdep.pl -rwxr-xr-x 3.5 KB
headers.sh -rwxr-xr-x 512 bytes
headers_check.pl -rw-r--r-- 2.7 KB
headers_install.pl -rw-r--r-- 1.5 KB
kallsyms.c -rw-r--r-- 15.1 KB
kernel-doc -rwxr-xr-x 61.1 KB
makelst -rwxr-xr-x 773 bytes
markup_oops.pl -rw-r--r-- 7.5 KB
mkcompile_h -rwxr-xr-x 2.6 KB
mkmakefile -rw-r--r-- 1.1 KB
mksysmap -rw-r--r-- 1.3 KB
mkuboot.sh -rwxr-xr-x 379 bytes
mkversion -rw-r--r-- 74 bytes
module-common.lds -rw-r--r-- 210 bytes
namespace.pl -rwxr-xr-x 13.1 KB
patch-kernel -rwxr-xr-x 9.8 KB
pnmtologo.c -rw-r--r-- 11.7 KB
profile2linkerlist.pl -rw-r--r-- 378 bytes
recordmcount.pl -rwxr-xr-x 17.1 KB
setlocalversion -rwxr-xr-x 2.0 KB
show_delta -rwxr-xr-x 3.0 KB
tags.sh -rwxr-xr-x 4.2 KB
unifdef.c -rw-r--r-- 31.6 KB
ver_linux -rwxr-xr-x 3.1 KB

back to top