• Pavel Tikhomirov's avatar
    fcntl: make F_GETOWN(EX) return 0 on dead owner task · cc4a3f88
    Pavel Tikhomirov authored
    Currently there is no way to differentiate the file with alive owner
    from the file with dead owner but pid of the owner reused. That's why
    CRIU can't actually know if it needs to restore file owner or not,
    because if it restores owner but actual owner was dead, this can
    introduce unexpected signals to the "false"-owner (which reused the
    pid).
    
    Let's change the api, so that F_GETOWN(EX) returns 0 in case actual
    owner is dead already. This comports with the POSIX spec, which
    states that a PID of 0 indicates that no signal will be sent.
    
    Cc: Jeff Layton <jlayton@kernel.org>
    Cc: "J. Bruce Fields" <bfields@fieldses.org>
    Cc: Alexander Viro <viro@zeniv.linux.org.uk>
    Cc: linux-fsdevel@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Cc: Cyrill Gorcunov <gorcunov@gmail.com>
    Cc: Andrei Vagin <avagin@gmail.com>
    Signed-off-by: default avatarPavel Tikhomirov <ptikhomirov@virtuozzo.com>
    Signed-off-by: default avatarJeff Layton <jlayton@kernel.org>
    cc4a3f88
fcntl.c 23.6 KB