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
Tip revision: b59db43ad4434519feb338eacb01d77eb50825c5 authored by Tyler Hicks on 21 November 2011, 23:31:02 UTC
eCryptfs: Prevent file create race condition
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 |
Computing file changes ...