https://github.com/torvalds/linux
Revision b59db43ad4434519feb338eacb01d77eb50825c5 authored by Tyler Hicks on 21 November 2011, 23:31:02 UTC, committed by Tyler Hicks on 23 November 2011, 21:39:38 UTC
The file creation path prematurely called d_instantiate() and
unlock_new_inode() before the eCryptfs inode info was fully
allocated and initialized and before the eCryptfs metadata was written
to the lower file.

This could result in race conditions in subsequent file and inode
operations leading to unexpected error conditions or a null pointer
dereference while attempting to use the unallocated memory.

https://launchpad.net/bugs/813146

Signed-off-by: Tyler Hicks <tyhicks@canonical.com>
Cc: stable@kernel.org
1 parent 6fe4c6d
History
Tip revision: b59db43ad4434519feb338eacb01d77eb50825c5 authored by Tyler Hicks on 21 November 2011, 23:31:02 UTC
eCryptfs: Prevent file create race condition
Tip revision: b59db43
File Mode Size
debug
events
gcov
irq
power
time
trace
.gitignore -rw-r--r-- 63 bytes
Kconfig.freezer -rw-r--r-- 52 bytes
Kconfig.hz -rw-r--r-- 1.7 KB
Kconfig.locks -rw-r--r-- 4.5 KB
Kconfig.preempt -rw-r--r-- 2.0 KB
Makefile -rw-r--r-- 5.1 KB
acct.c -rw-r--r-- 17.1 KB
async.c -rw-r--r-- 9.1 KB
audit.c -rw-r--r-- 40.2 KB
audit.h -rw-r--r-- 5.7 KB
audit_tree.c -rw-r--r-- 21.7 KB
audit_watch.c -rw-r--r-- 14.2 KB
auditfilter.c -rw-r--r-- 33.2 KB
auditsc.c -rw-r--r-- 66.5 KB
backtracetest.c -rw-r--r-- 2.1 KB
bounds.c -rw-r--r-- 600 bytes
capability.c -rw-r--r-- 10.7 KB
cgroup.c -rw-r--r-- 137.5 KB
cgroup_freezer.c -rw-r--r-- 9.4 KB
compat.c -rw-r--r-- 28.4 KB
configs.c -rw-r--r-- 2.8 KB
cpu.c -rw-r--r-- 15.8 KB
cpu_pm.c -rw-r--r-- 6.5 KB
cpuset.c -rw-r--r-- 74.3 KB
crash_dump.c -rw-r--r-- 1.2 KB
cred.c -rw-r--r-- 22.1 KB
delayacct.c -rw-r--r-- 5.0 KB
dma.c -rw-r--r-- 3.6 KB
elfcore.c -rw-r--r-- 459 bytes
exec_domain.c -rw-r--r-- 4.3 KB
exit.c -rw-r--r-- 46.4 KB
extable.c -rw-r--r-- 3.7 KB
fork.c -rw-r--r-- 42.3 KB
freezer.c -rw-r--r-- 4.0 KB
futex.c -rw-r--r-- 70.6 KB
futex_compat.c -rw-r--r-- 4.9 KB
groups.c -rw-r--r-- 6.0 KB
hrtimer.c -rw-r--r-- 46.4 KB
hung_task.c -rw-r--r-- 5.1 KB
irq_work.c -rw-r--r-- 3.1 KB
itimer.c -rw-r--r-- 7.3 KB
jump_label.c -rw-r--r-- 9.2 KB
kallsyms.c -rw-r--r-- 14.2 KB
kexec.c -rw-r--r-- 39.3 KB
kfifo.c -rw-r--r-- 12.7 KB
kmod.c -rw-r--r-- 14.4 KB
kprobes.c -rw-r--r-- 56.3 KB
ksysfs.c -rw-r--r-- 5.1 KB
kthread.c -rw-r--r-- 11.9 KB
latencytop.c -rw-r--r-- 7.6 KB
lockdep.c -rw-r--r-- 101.4 KB
lockdep_internals.h -rw-r--r-- 4.5 KB
lockdep_proc.c -rw-r--r-- 17.0 KB
lockdep_states.h -rw-r--r-- 233 bytes
module.c -rw-r--r-- 88.5 KB
mutex-debug.c -rw-r--r-- 2.9 KB
mutex-debug.h -rw-r--r-- 1.7 KB
mutex.c -rw-r--r-- 13.3 KB
mutex.h -rw-r--r-- 1.3 KB
notifier.c -rw-r--r-- 16.0 KB
nsproxy.c -rw-r--r-- 5.9 KB
padata.c -rw-r--r-- 27.5 KB
panic.c -rw-r--r-- 10.2 KB
params.c -rw-r--r-- 21.5 KB
pid.c -rw-r--r-- 13.9 KB
pid_namespace.c -rw-r--r-- 4.5 KB
posix-cpu-timers.c -rw-r--r-- 42.5 KB
posix-timers.c -rw-r--r-- 29.1 KB
printk.c -rw-r--r-- 43.5 KB
profile.c -rw-r--r-- 16.7 KB
ptrace.c -rw-r--r-- 26.4 KB
range.c -rw-r--r-- 2.9 KB
rcu.h -rw-r--r-- 2.6 KB
rcupdate.c -rw-r--r-- 9.1 KB
rcutiny.c -rw-r--r-- 6.7 KB
rcutiny_plugin.h -rw-r--r-- 31.3 KB
rcutorture.c -rw-r--r-- 46.2 KB
rcutree.c -rw-r--r-- 64.7 KB
rcutree.h -rw-r--r-- 18.7 KB
rcutree_plugin.h -rw-r--r-- 58.8 KB
rcutree_trace.c -rw-r--r-- 13.9 KB
relay.c -rw-r--r-- 32.6 KB
res_counter.c -rw-r--r-- 4.1 KB
resource.c -rw-r--r-- 26.8 KB
rtmutex-debug.c -rw-r--r-- 4.6 KB
rtmutex-debug.h -rw-r--r-- 1.4 KB
rtmutex-tester.c -rw-r--r-- 8.7 KB
rtmutex.c -rw-r--r-- 26.4 KB
rtmutex.h -rw-r--r-- 1.1 KB
rtmutex_common.h -rw-r--r-- 3.3 KB
rwsem.c -rw-r--r-- 2.4 KB
sched.c -rw-r--r-- 232.6 KB
sched_autogroup.c -rw-r--r-- 6.0 KB
sched_autogroup.h -rw-r--r-- 1014 bytes
sched_clock.c -rw-r--r-- 8.0 KB
sched_cpupri.c -rw-r--r-- 6.7 KB
sched_cpupri.h -rw-r--r-- 791 bytes
sched_debug.c -rw-r--r-- 11.8 KB
sched_fair.c -rw-r--r-- 127.4 KB
sched_features.h -rw-r--r-- 1.8 KB
sched_idletask.c -rw-r--r-- 2.1 KB
sched_rt.c -rw-r--r-- 41.9 KB
sched_stats.h -rw-r--r-- 9.3 KB
sched_stoptask.c -rw-r--r-- 2.1 KB
seccomp.c -rw-r--r-- 1.6 KB
semaphore.c -rw-r--r-- 7.2 KB
signal.c -rw-r--r-- 82.9 KB
smp.c -rw-r--r-- 18.4 KB
softirq.c -rw-r--r-- 22.1 KB
spinlock.c -rw-r--r-- 9.5 KB
srcu.c -rw-r--r-- 10.4 KB
stacktrace.c -rw-r--r-- 1.1 KB
stop_machine.c -rw-r--r-- 15.5 KB
sys.c -rw-r--r-- 44.2 KB
sys_ni.c -rw-r--r-- 5.8 KB
sysctl.c -rw-r--r-- 69.2 KB
sysctl_binary.c -rw-r--r-- 51.5 KB
sysctl_check.c -rw-r--r-- 3.8 KB
taskstats.c -rw-r--r-- 16.0 KB
test_kprobes.c -rw-r--r-- 8.5 KB
time.c -rw-r--r-- 18.7 KB
timeconst.pl -rw-r--r-- 7.2 KB
timer.c -rw-r--r-- 47.8 KB
tracepoint.c -rw-r--r-- 19.6 KB
tsacct.c -rw-r--r-- 4.3 KB
uid16.c -rw-r--r-- 5.3 KB
up.c -rw-r--r-- 413 bytes
user-return-notifier.c -rw-r--r-- 1.3 KB
user.c -rw-r--r-- 4.8 KB
user_namespace.c -rw-r--r-- 3.4 KB
utsname.c -rw-r--r-- 2.5 KB
utsname_sysctl.c -rw-r--r-- 3.0 KB
wait.c -rw-r--r-- 8.2 KB
watchdog.c -rw-r--r-- 14.4 KB
workqueue.c -rw-r--r-- 103.7 KB
workqueue_sched.h -rw-r--r-- 311 bytes

back to top