Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

[PATCH] arm_timer: remove a racy and obsolete PF_EXITING check

arm_timer() checks PF_EXITING to prevent BUG_ON(->exit_state)
in run_posix_cpu_timers().

However, for some reason it does so only for CPUCLOCK_PERTHREAD
case (which is imho wrong).

Also, this check is not reliable, PF_EXITING could be set on
another cpu without any locks/barriers just after the check,
so it can't prevent from attaching the timer to the exiting
task.

The previous patch makes this check unneeded.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
latest commit f53ae1dc34
Oleg Nesterov authored Linus Torvalds committed
..
Failed to load latest commit information.
irq [PATCH] request_irq(): remove warnings from irq probing
power
.gitignore
Kconfig.hz
Kconfig.preempt [PATCH] sched: voluntary kernel preemption
Makefile
acct.c
audit.c [PATCH] More user space subject labels
audit.h [PATCH] support for context based audit filtering, part 2
auditfilter.c [PATCH] More user space subject labels
auditsc.c [PATCH] Audit Filter Performance
capability.c [PATCH] refactor capable() to one implementation, add __capable() helper
compat.c
configs.c
cpu.c [PATCH] Notifier chain update: API changes
cpuset.c [PATCH] cpuset: might_sleep_if check in cpuset_zones_allowed
dma.c
exec_domain.c [PATCH] Fix module refcount leak in __set_personality()
exit.c
extable.c
fork.c
futex.c [PATCH] futex: check and validate timevals
futex_compat.c
hrtimer.c
intermodule.c [PATCH] missing license tag in intermodule
itimer.c
kallsyms.c
kexec.c
kfifo.c [PATCH] gfp flags annotations - part 1
kmod.c [PATCH] wait_for_helper: trivial style cleanup
kprobes.c [PATCH] kprobes: NULL out non-relevant fields in struct kretprobe
ksysfs.c [PATCH] fix build error if CONFIG_SYSFS=n
kthread.c [PATCH] find_task_by_pid() needs tasklist_lock
module.c [PATCH] symbol_put_addr() locks kernel
mutex-debug.c [PATCH] fix/simplify mutex debugging code
mutex-debug.h
mutex.c
mutex.h [PATCH] mutex subsystem, core
panic.c [PATCH] the scheduled unexport of panic_timeout
params.c
pid.c [PATCH] pidhash: Refactor the pid hash table
posix-cpu-timers.c [PATCH] arm_timer: remove a racy and obsolete PF_EXITING check
posix-timers.c
printk.c BUG_ON() Conversion in kernel/printk.c
profile.c
ptrace.c
rcupdate.c
rcutorture.c [PATCH] for_each_possible_cpu: fixes for generic part
relay.c [PATCH] relay: consolidate sendfile() and read() code
resource.c [PATCH] kernel/resource.c: __check_region(): remove pointless __depre…
sched.c
seccomp.c Linux-2.6.12-rc2
signal.c
softirq.c [PATCH] Remove __devinit and __cpuinit from notifier_call definitions
softlockup.c
spinlock.c
stop_machine.c [PATCH] Remove set_fs() in stop_machine()
sys.c [PATCH] Make setsid() more robust
sys_ni.c
sysctl.c [PATCH] Range checking in do_proc_dointvec_(userhz_)jiffies_conv
time.c Fix comments: s/granuality/granularity/
timer.c [PATCH] Fix a NO_IDLE_HZ timer bug
uid16.c [PATCH] Add more prevent_tail_call()
user.c
wait.c Linux-2.6.12-rc2
workqueue.c [PATCH] Remove __devinit and __cpuinit from notifier_call definitions
Something went wrong with that request. Please try again.