Messages in this thread Patch in this message |  | | Date | Fri, 24 Nov 2000 23:28:44 +1100 | From | Andrew Morton <> | Subject | Re: OOPS on bringing down ppp |
| |
Mark Ellis wrote: > > Hi all, consistently getting the following when pppd is terminated.
When pppd downs the ppp0 device, unregister_netdevice() is trying to run /sbin/hotplug in a new kernel thread. That thread's `files' structure is copied from pppd, but it is NULL. Presumably pppd's files pointer was also NULL.
Try this:
--- linux-2.4.0-test11-ac2/kernel/kmod.c Tue Nov 21 20:11:21 2000 +++ linux-akpm/kernel/kmod.c Fri Nov 24 23:03:34 2000 @@ -99,8 +99,10 @@ flush_signal_handlers(current); spin_unlock_irq(¤t->sigmask_lock); - for (i = 0; i < current->files->max_fds; i++ ) { - if (current->files->fd[i]) close(i); + if (current->files) { + for (i = 0; i < current->files->max_fds; i++ ) { + if (current->files->fd[i]) close(i); + } } /* Drop the "current user" thing */
Not my area, but I don't think exec_usermodehelper() should assume that current->files is always valid.
Al, is this correct? If so, does daemonize() also need this test? If not, then how did this thread get (current->files == NULL)? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |