lkml.org 
[lkml]   [2009]   [Apr]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH -tip] x86: acpi/sleep.c saved_magic fix overflow
    On Fri, Apr 10, 2009 at 07:55:45PM +0200, Pavel Machek wrote:
    > On Fri 2009-04-10 23:06:55, Jaswinder Singh Rajput wrote:
    > > Impact: fix overflow
    >
    > > Constant 0x123456789abcdef0 is so big for a long.
    > > So using saved_magic 0x12345678 for both 32 and 64 bit.
    >
    > Have you tested the patch? I have feeling that this is tested from
    > assembly... Plus it is only set to long constant on 64-bit, so I don't
    > think you are fixing anything. And if your code is correct the
    > variable is write only...

    $ git grep saved_magic
    kernel/acpi/sleep.c: saved_magic = 0x12345678;
    kernel/acpi/sleep.c: saved_magic = 0x123456789abcdef0;
    kernel/acpi/sleep.h:extern long saved_magic;
    kernel/acpi/wakeup_32.S: movl %cs:saved_magic, %eax
    kernel/acpi/wakeup_32.S:ENTRY(saved_magic) .long 0
    kernel/acpi/wakeup_64.S: movq saved_magic, %rax
    kernel/acpi/wakeup_64.S:ENTRY(saved_magic) .quad 0


    wakeup_32.S:
    movl %cs:saved_magic, %eax
    cmpl $0x12345678, %eax

    wakeup_64.S:
    movq saved_magic, %rax
    movq $0x123456789abcdef0, %rdx

    So patch is obviously bogus.

    Sam


    \
     
     \ /
      Last update: 2009-04-10 21:13    [W:2.305 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site