• Andrei Vagin's avatar
    Revert "fs/exec: allow to unshare a time namespace on vfork+exec" · 33a2d6bc
    Andrei Vagin authored
    This reverts commit 133e2d3e.
    
    Alexey pointed out a few undesirable side effects of the reverted change.
    First, it doesn't take into account that CLONE_VFORK can be used with
    CLONE_THREAD. Second, a child process doesn't enter a target time name-space,
    if its parent dies before the child calls exec. It happens because the parent
    clears vfork_done.
    
    Eric W. Biederman suggests installing a time namespace as a task gets a new mm.
    It includes all new processes cloned without CLONE_VM and all tasks that call
    exec(). This is an user API change, but we think there aren't users that depend
    on the old behavior.
    
    It is too late to make such changes in this release, so let's roll back
    this patch and introduce the right one in the next release.
    
    Cc: Alexey Izbyshev <izbyshev@ispras.ru>
    Cc: Christian Brauner <brauner@kernel.org>
    Cc: Dmitry Safonov <0x7f454c46@gmail.com>
    Cc: "Eric W. Biederman" <ebiederm@xmission.com>
    Cc: Florian Weimer <fweimer@redhat.com>
    Cc: Kees Cook <keescook@chromium.org>
    Signed-off-by: default avatarAndrei Vagin <avagin@gmail.com>
    Signed-off-by: default avatarKees Cook <keescook@chromium.org>
    Link: https://lore.kernel.org/r/20220913102551.1121611-3-avagin@google.com
    33a2d6bc
nsproxy.c 12.8 KB