lkml.org 
[lkml]   [2003]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: call_usermodehelper does not report exit status?
    Andrew Morton <akpm@osdl.org> wrote:
    > Omen Wild <Omen.Wild@Dartmouth.EDU> wrote:
    > >
    > > I found the call_usermodehelper function and
    > > call it with the wait flag set, but I cannot get a non-zero return
    > > status of the program to propagate into the kernel.
    >
    > This might fix it.


    I think you missed the why behind the comment just above your first change.

    /* We don't have a SIGCHLD signal handler, so this
    * always returns -ECHILD, but the important thing is
    * that it blocks. */
    - sys_wait4(pid, NULL, 0, NULL);
    + sys_wait4(pid, &sub_info->retval, 0, NULL);


    The exit code notices that there is no signal handler for SIGCHILD and
    does a fast exit, then we notice when woken up the child no longer exists.

    Rusty discovered this back in June when we were trying to fix a checker
    error on the wait call, and decided that at the time no one was using the
    return value, hence the simpler fix.

    http://linux.bkbits.net:8080/linux-2.5/cset@1.1046.366.23?nav=index.html|src/|src/kernel|related/kernel/kmod.c


    milton
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:48    [W:0.022 / U:123.732 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site