Changeset 24364

Show
Ignore:
Timestamp:
03/11/08 17:29:44 (8 months ago)
Author:
bonefish
Message:

With syscall kernel tracing enabled, the syscall return value (%eax,
%edx) was trashed before passing it to the user debugger. strace shows
the correct return values again.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • haiku/trunk/src/system/kernel/arch/x86/arch_interrupts.S

    r23983 r24364  
    401401        pushl   -4(%ebp)                                // syscall start time 
    402402        pushl   -8(%ebp) 
    403         push    %edx                                    // syscall return value 
     403        movl    IFRAME_edx(%ebp), %edx  // syscall return value 
     404        movl    IFRAME_eax(%ebp), %eax 
     405        push    %edx 
    404406        push    %eax 
    405407        lea             16(%esp), %eax                  // syscall parameters