lkml.org 
[lkml]   [2008]   [Oct]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: GIT head no longer boots on x86-64


    On Mon, 13 Oct 2008, Jiri Slaby wrote:
    > + sprint_symbol(buf, (unsigned long)__builtin_return_address(0));
    > + if (!is_vmalloc_addr(vmalloc_addr) && !is_module_address(addr))
    > + printk("BUG? %s (from %s): %p\n", __func__, buf, vmalloc_addr);

    Just use

    printk("BUG? %s (from %pS): %p\n",
    __func__,
    __builtin_return_address(0),
    vmalloc_addr);

    and don't ever sprint_symbol() any more.

    The rules:
    - %pS for symbolic names of real pointers off the stack etc (ie something
    that is approximately type "void *" and points directly to the function
    code)
    - %pF for symbolic names of a C function pointer (ie of type (*fn)(...)
    and actually has a real C function pointer type)
    where the difference doesn't matter for x86 (or most sane architectures),
    but does matter for architectures that use function descriptors rather
    than direct pointers (ia64, hppa, ppc64, maybe others).

    Linus


    \
     
     \ /
      Last update: 2008-10-13 16:49    [W:3.240 / U:0.212 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site