lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 26 Oct 2017 00:59:55 -0700
From:   Andy Lutomirski <>
To:     Ricardo Neri <>
Cc:     Ingo Molnar <>,
        Thomas Gleixner <>,
        "H. Peter Anvin" <>,
        Andy Lutomirski <>,
        Borislav Petkov <>,
        Peter Zijlstra <>,
        Andrew Morton <>,
        Brian Gerst <>,
        Chris Metcalf <>,
        Dave Hansen <>,
        Paolo Bonzini <>,
        Liang Z Li <>,
        Masami Hiramatsu <>,
        Huang Rui <>, Jiri Slaby <>,
        Jonathan Corbet <>,
        "Michael S. Tsirkin" <>,
        Paul Gortmaker <>,
        Vlastimil Babka <>,
        Chen Yucong <>,
        "Ravi V. Shankar" <>,
        Shuah Khan <>,
        "" <>,
        X86 ML <>,
        "Neri, Ricardo" <>,
        Fenghua Yu <>,
        Tony Luck <>
Subject: Re: [PATCH v9 25/29] x86/umip: Force a page fault when unable to copy
 emulated result to user

On Tue, Oct 3, 2017 at 8:54 PM, Ricardo Neri
<> wrote:
> fixup_umip_exception() will be called from do_general_protection(). If the
> former returns false, the latter will issue a SIGSEGV with SEND_SIG_PRIV.
> However, when emulation is successful but the emulated result cannot be
> copied to user space memory, it is more accurate to issue a SIGSEGV with
> SEGV_MAPERR with the offending address. A new function, inspired in
> force_sig_info_fault(), is introduced to model the page fault.

This code is slightly buggy (with, for example, PKRU, although the
chance that anyone ever notices is about nil).  For an alternative
approach, see current->thread.sig_on_uaccess_err, used in
arch/x86/entry/vsyscall/vsyscall_64.c.  But I'm fine with this patch
as is, too.

Powered by blists - more mailing lists