• Zachary Amsden's avatar
    [PATCH] x86: privilege cleanup · 0998e422
    Zachary Amsden authored
    Privilege checking cleanup.  Originally, these diffs were much greater, but
    recent cleanups in Linux have already done much of the cleanup.  I added
    some explanatory comments in places where the reasoning behind certain
    tests is rather subtle.
    
    Also, in traps.c, we can skip the user_mode check in handle_BUG().  The
    reason is, there are only two call chains - one via die_if_kernel() and one
    via do_page_fault(), both entering from die().  Both of these paths already
    ensure that a kernel mode failure has happened.  Also, the original check
    here, if (user_mode(regs)) was insufficient anyways, since it would not
    rule out BUG faults from V8086 mode execution.
    
    Saving the %ss segment in show_regs() rather than assuming a fixed value
    also gives better information about the current kernel state in the
    register dump.
    Signed-off-by: default avatarZachary Amsden <zach@vmware.com>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    0998e422
traps.c 28.2 KB