• Johannes Berg's avatar
    um: chan_user: Fix winch_tramp() return value · 57ae0b67
    Johannes Berg authored
    The previous fix here was only partially correct, it did
    result in returning a proper error value in case of error,
    but it also clobbered the pid that we need to return from
    this function (not just zero for success).
    
    As a result, it returned 0 here, but later this is treated
    as a pid and used to kill the process, but since it's now
    0 we kill(0, SIGKILL), which makes UML kill itself rather
    than just the helper thread.
    
    Fix that and make it more obvious by using a separate
    variable for the pid.
    
    Fixes: ccf1236e ("um: fix error return code in winch_tramp()")
    Reported-and-tested-by: default avatarNathan Chancellor <nathan@kernel.org>
    Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
    57ae0b67
chan_user.c 6.99 KB