usbatm_do_heavy_init() calls allow_signal() which plays with parent process's
->sighand.
Signed-off-by: Oleg Nesterov <[email protected]>
--- 2.6.21-rc5/drivers/usb/atm/usbatm.c~usbatm 2006-11-27 21:19:30.000000000 +0300
+++ 2.6.21-rc5/drivers/usb/atm/usbatm.c 2007-04-13 03:34:56.000000000 +0400
@@ -1019,7 +1019,7 @@ static int usbatm_do_heavy_init(void *ar
static int usbatm_heavy_init(struct usbatm_data *instance)
{
- int ret = kernel_thread(usbatm_do_heavy_init, instance, CLONE_KERNEL);
+ int ret = kernel_thread(usbatm_do_heavy_init, instance, CLONE_FS | CLONE_FILES);
if (ret < 0) {
usb_err(instance, "%s: failed to create kernel_thread (%d)!\n", __func__, ret);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]