• Eric W. Biederman's avatar
    binfmt_elf: remove the set_fs in fill_siginfo_note · fa4751f4
    Eric W. Biederman authored
    The code in binfmt_elf.c is differnt from the rest of the code that
    processes siginfo, as it sends siginfo from a kernel buffer to a file
    rather than from kernel memory to userspace buffers.  To remove it's
    use of set_fs the code needs some different siginfo helpers.
    
    Add the helper copy_siginfo_to_external to copy from the kernel's
    internal siginfo layout to a buffer in the siginfo layout that
    userspace expects.
    
    Modify fill_siginfo_note to use copy_siginfo_to_external instead of
    set_fs and copy_siginfo_to_user.
    
    Update compat_binfmt_elf.c to use the previously added
    copy_siginfo_to_external32 to handle the compat case.
    Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    fa4751f4
signal.h 13.2 KB