Re: daemon-less kmod & Alpha no-go!

Steven N. Hirsch (shirsch@ibm.net)
Tue, 21 Apr 1998 20:27:58 -0400 (EDT)


All,

I've found the underlying problem with daemonless 'kmod' on Alpha.
Apparently, glibc header changes are to blame. I became suspicious after
noticing that kmod is compiled with __KERNEL__ defined. Turns out to be a
kernel vs. user space disagreement as to the storage type and size of
sigset_t.

The following quick hack brings kmod to life:

*** kmod.c.orig Mon Apr 20 19:56:45 1998
--- kmod.c Tue Apr 21 20:10:42 1998
***************
*** 62,68 ****
the signal just right.
*/
spin_lock_irq(&current->sigmask_lock);
! sigfillset(&current->blocked);
spin_unlock_irq(&current->sigmask_lock);

set_fs(KERNEL_DS); /* Allow execve args to be in kernel space. */
--- 62,68 ----
the signal just right.
*/
spin_lock_irq(&current->sigmask_lock);
! memset (&current->blocked, '\0xff', sizeof(current->blocked));
spin_unlock_irq(&current->sigmask_lock);

set_fs(KERNEL_DS); /* Allow execve args to be in kernel space. */

I get dizzy trying to figure out who is getting which prototype from
where, but maybe someone intimately familiar with the new glibc headers
can suggest a cleaner fix?

Enjoy.

Steve

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu