Changeset 296426ad in mainline for kernel/arch/amd64/src/syscall.c


Ignore:
Timestamp:
2007-11-16T16:17:18Z (17 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
9c2fb97
Parents:
e686744c
Message:

Support for 6 syscalls arguments on amd64.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/amd64/src/syscall.c

    re686744c r296426ad  
    5353        /* Setup syscall entry address */
    5454       
    55         /* This is _mess_ - the 64-bit CS is argument+16,
    56          * the SS is argument+8. The order is:
     55        /* This is _mess_ - the 64-bit CS is argument + 16,
     56         * the SS is argument + 8. The order is:
    5757         * +0(KDATA_DES), +8(UDATA_DES), +16(UTEXT_DES)
    5858         */
    5959        write_msr(AMD_MSR_STAR,
    60                   ((uint64_t)(gdtselector(KDATA_DES) | PL_USER)<<48) \
    61                   | ((uint64_t)(gdtselector(KTEXT_DES) | PL_KERNEL)<<32));
     60            ((uint64_t)(gdtselector(KDATA_DES) | PL_USER) << 48) |
     61            ((uint64_t)(gdtselector(KTEXT_DES) | PL_KERNEL) << 32));
    6262        write_msr(AMD_MSR_LSTAR, (uint64_t)syscall_entry);
    6363        /* Mask RFLAGS on syscall
Note: See TracChangeset for help on using the changeset viewer.