Harald Welte
46113830a1
[PATCH] Fix signal sending in usbdevio on async URB completion
...
If a process issues an URB from userspace and (starts to) terminate
before the URB comes back, we run into the issue described above. This
is because the urb saves a pointer to "current" when it is posted to the
device, but there's no guarantee that this pointer is still valid
afterwards.
In fact, there are three separate issues:
1) the pointer to "current" can become invalid, since the task could be
completely gone when the URB completion comes back from the device.
2) Even if the saved task pointer is still pointing to a valid task_struct,
task_struct->sighand could have gone meanwhile.
3) Even if the process is perfectly fine, permissions may have changed,
and we can no longer send it a signal.
So what we do instead, is to save the PID and uid's of the process, and
introduce a new kill_proc_info_as_uid() function.
Signed-off-by: Harald Welte <laforge@gnumonks.org>
[ Fixed up types and added symbol exports ]
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-10-10 16:16:33 -07:00
..
irq
[PATCH] CHECK_IRQ_PER_CPU() to avoid dead code in __do_IRQ()
2005-09-07 16:57:29 -07:00
power
[PATCH] x86_64: Set up safe page tables during resume
2005-10-10 08:36:46 -07:00
acct.c
[PATCH] kernel/acct: add kerneldoc
2005-09-10 10:06:26 -07:00
audit.c
[PATCH] gfp flags annotations - part 1
2005-10-08 15:00:57 -07:00
auditsc.c
[AUDIT] Allow filtering on system call success _or_ failure
2005-08-27 10:25:43 +01:00
capability.c
[PATCH] kernel/capability.c: add kerneldoc
2005-07-27 16:26:06 -07:00
compat.c
[PATCH] kernel: fix-up schedule_timeout() usage
2005-09-10 10:06:37 -07:00
configs.c
cpu.c
cpuset.c
[PATCH] gfp flags annotations - part 1
2005-10-08 15:00:57 -07:00
crash_dump.c
[PATCH] kernel/crash_dump.c: add kerneldoc
2005-07-27 16:26:06 -07:00
dma.c
exec_domain.c
exit.c
Fix inequality comparison against "task->state"
2005-10-01 11:04:18 -07:00
extable.c
fork.c
[PATCH] CPU hotplug breaks wake_up_new_task
2005-09-17 11:49:59 -07:00
futex.c
[PATCH] futex: remove duplicate code
2005-09-07 16:57:33 -07:00
intermodule.c
[PATCH] introduce and use kzalloc
2005-09-07 16:57:45 -07:00
itimer.c
[PATCH] itimer fixes
2005-07-27 16:25:51 -07:00
kallsyms.c
Kconfig.hz
Kconfig.preempt
kexec.c
kfifo.c
[PATCH] gfp flags annotations - part 1
2005-10-08 15:00:57 -07:00
kmod.c
kprobes.c
[PATCH] kprobes: fix bug when probed on task and isr functions
2005-09-07 16:58:01 -07:00
ksysfs.c
kthread.c
Makefile
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
module.c
[PATCH] use add_taint() for setting tainted bit flags
2005-09-13 08:22:29 -07:00
panic.c
[PATCH] Call emergency_reboot from panic
2005-07-26 14:35:43 -07:00
params.c
[PATCH] Ignore trailing whitespace on kernel parameters correctly
2005-09-28 07:46:41 -07:00
pid.c
posix-cpu-timers.c
posix-timers.c
[PATCH] fix send_sigqueue() vs thread exit race
2005-09-07 16:57:33 -07:00
printk.c
[PATCH] Add printk_clock()
2005-09-21 10:11:54 -07:00
profile.c
[PATCH] mostly_read data section
2005-07-07 18:23:46 -07:00
ptrace.c
[PATCH] remove duplicated code from proc and ptrace
2005-09-07 16:57:43 -07:00
rcupdate.c
[PATCH] files: rcuref APIs
2005-09-09 13:57:54 -07:00
resource.c
[PATCH] introduce and use kzalloc
2005-09-07 16:57:45 -07:00
sched.c
[PATCH] Fix spinlock owner debugging
2005-09-13 09:59:04 -07:00
seccomp.c
signal.c
[PATCH] Fix signal sending in usbdevio on async URB completion
2005-10-10 16:16:33 -07:00
softirq.c
[PATCH] x86-64: Some cleanup and optimization to the processor data area.
2005-09-12 10:49:58 -07:00
softlockup.c
[PATCH] detect soft lockups
2005-09-07 16:57:17 -07:00
spinlock.c
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
stop_machine.c
sys.c
[PATCH] reboot: comment and factor the main reboot functions
2005-09-22 22:17:33 -07:00
sys_ni.c
[PATCH] remove sys_set_zone_reclaim()
2005-08-01 10:03:56 -07:00
sysctl.c
[NET]: Fix sparse warnings
2005-08-29 16:01:32 -07:00
time.c
[PATCH] clean up inline static vs static inline
2005-07-27 16:26:20 -07:00
timer.c
[PATCH] schedule_timeout_[un]interruptible() speedup
2005-09-13 08:22:29 -07:00
uid16.c
user.c
[PATCH] inotify
2005-07-12 20:38:38 -07:00
wait.c
workqueue.c
[PATCH] introduce and use kzalloc
2005-09-07 16:57:45 -07:00