Changeset 1eb0dd13 in mainline


Ignore:
Timestamp:
2005-07-21T13:32:41Z (20 years ago)
Author:
Jakub Vana <jakub.vana@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
60875800
Parents:
2884193
Message:

Disable alignment check

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • arch/ia32/src/pm.c

    r2884193 r1eb0dd13  
    129129
    130130
    131 
     131// Clean IOPL(12,13) and NT(14) flags in EFLAGS register
    132132static void clean_IOPL_NT_flags(void)
    133133{
     
    144144        );
    145145}
     146
     147// Clean AM(18) flag in CR0 register
     148static void clean_AM_flag(void)
     149{
     150  asm
     151        (
     152    "mov %%cr0,%%eax;"
     153                "and $0xFFFBFFFF,%%eax;"
     154                "mov %%eax,%%cr0;"
     155                :
     156                :
     157                :"%eax"
     158        );
     159}
     160
    146161
    147162
     
    186201        __asm__("ltr %0" : : "r" ((__u16) selector(TSS_DES)));
    187202       
    188         clean_IOPL_NT_flags();
    189 }
     203        clean_IOPL_NT_flags();    //Disable I/O on nonprivileged levels
     204        clean_AM_flag();          //Disable alignment check
     205}
  • doc/TODO

    r2884193 r1eb0dd13  
    1313  + [ia32] lazy context switch using TS flag                              [DONE]
    1414+ [ia32] MMX,SSE1-.. initialization
    15 + [ia32] review privilege separation
     15+ [ia32] review privilege separation                                      [DONE]
    1616  + zero IOPL in EFLAGS                                                   [DONE]
    1717  + before IRET (from SYSCALL), zero NT in EFLAGS                         [DONE]
Note: See TracChangeset for help on using the changeset viewer.