lkml.org 
[lkml]   [2010]   [Jul]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [patch 1/2] x86_64 page fault NMI-safe
    From
    On Wed, Jul 14, 2010 at 3:21 PM, Mathieu Desnoyers
    <mathieu.desnoyers@efficios.com> wrote:
    >
    > If we can find a clean way to handle this NMI vs iret problem outside of the
    > entry_*.S code, within NMI-specific code, I'm indeed all for it. entry_*.s is
    > already complicated enough as it is. I think checking the %rip at NMI entry
    > could work out.

    I think the %rip check should be pretty simple - exactly because there
    is only a single point where the race is open between that 'mov' and
    the 'iret'. So it's simpler than the (similar) thing we do for
    debug/nmi stack fixup for sysenter that has to check a range.

    The only worry is if that crazy paravirt code wants to paravirtualize
    the iretq. Afaik, paravirt does that exactly because they screw up
    iret handling themselves. Maybe we could stop doing that stupid iretq
    paravirtualization, and just tell the paravirt people to do the same
    thing I propose, and just allow nesting.

    Linus


    \
     
     \ /
      Last update: 2010-07-15 00:39    [W:4.376 / U:0.852 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site