lkml.org 
[lkml]   [2003]   [Mar]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: 2.5.63 accesses below %esp (was: Re: ntfs OOPS (2.5.63))

    On Tue, 18 Mar 2003, Keith Owens wrote:
    > At the risk of stating the obvious: the only program that cares about
    > the 'Code:' line is ksymoops. It already handles code around the EIP
    > by looking for a byte enclosed in <> and assuming that byte is at EIP.
    > ksymoops can happily decode around the failing instruction and does so
    > for most architectures with fixed length instructions.
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    Ah, this is the reason it didn't work for x86 when I looked this issue
    with ksymoops days ago and tried all possible bracketing combinations
    (nothing such limit described in the man page). I didn't mention this
    before because it's a non-issue if kernel doesn't dump the backwards
    bytes for these archs.

    > I can change ksymoops to add a special case for architectures with
    > variable length instructions - i386, s390 and their 64 bit equivalents,
    > are there any others?

    Please don't bother. Linus have indicated already 4 times in this
    thread he will not dump backwards code if it doesn't start at
    instruction boundary.

    > For variable length instructions, ksymoops will extract the bytes
    > up to but not including eip, decode and print them with a warning
    >
    > This architecture has variable length instructions, decoding before eip is
    > unreliable, take these instructions with a pinch of salt.

    86% it will be incorrect on x86. But the right code can be dumped 100%
    among a max 7 decoded lists to choose from (for pedants, yes in theory
    it's not exactly 100% but a bit less, only from practical and problem
    solving point of view "100%"). I've found the max ususally is 1, 2 or
    3 with decreasing probabilities but I didn't do exhaustive statistical
    analysis and it also depends on the compiler (version).

    Szaka

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:34    [W:4.329 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site