Changeset f272cb8 in mainline for kernel/test/mm/purge1.c


Ignore:
Timestamp:
2006-12-11T19:19:28Z (18 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
70b6de1
Parents:
50661ab
Message:

integrate more tests

File:
1 moved

Legend:

Unmodified
Added
Removed
  • kernel/test/mm/purge1.c

    r50661ab rf272cb8  
    2626 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    2727 */
     28
    2829#include <print.h>
    2930#include <test.h>
     
    3637#include <debug.h>
    3738
     39#ifdef ia64
    3840
    3941extern void tlb_invalidate_all(void);
    4042extern void tlb_invalidate_pages(asid_t asid, uintptr_t va, count_t cnt);
     43
    4144void test(void)
    4245{
     
    4649        int i;
    4750                                                                                                                                                                                                                                                                                                                                                                       
    48   entryd.word[0] = 0;
    49   entryd.word[1] = 0;
     51        entryd.word[0] = 0;
     52        entryd.word[1] = 0;
    5053                                                                                               
    51   entryd.p = true;                 /* present */
    52   entryd.ma = MA_WRITEBACK;
    53   entryd.a = true;                 /* already accessed */
    54   entryd.d = true;                 /* already dirty */
    55   entryd.pl = PL_KERNEL;
    56   entryd.ar = AR_READ | AR_WRITE;
    57   entryd.ppn = 0;
    58   entryd.ps = PAGE_WIDTH;
    59 
    60 
    61   entryi.word[0] = 0;
    62   entryi.word[1] = 0;
    63                                                                                                
    64   entryi.p = true;                 /* present */
    65   entryi.ma = MA_WRITEBACK;
    66   entryi.a = true;                 /* already accessed */
    67   entryi.d = true;                 /* already dirty */
    68   entryi.pl = PL_KERNEL;
    69   entryi.ar = AR_READ | AR_EXECUTE;
    70   entryi.ppn = 0;
    71   entryi.ps = PAGE_WIDTH;
    72 
     54        entryd.p = true;                 /* present */
     55        entryd.ma = MA_WRITEBACK;
     56        entryd.a = true;                 /* already accessed */
     57        entryd.d = true;                 /* already dirty */
     58        entryd.pl = PL_KERNEL;
     59        entryd.ar = AR_READ | AR_WRITE;
     60        entryd.ppn = 0;
     61        entryd.ps = PAGE_WIDTH;
    7362       
    74         for(i=0;i<100;i++)
    75         {
    76                 itc_mapping_insert(0+i*(1<<PAGE_WIDTH),8,entryi);
    77                 dtc_mapping_insert(0+i*(1<<PAGE_WIDTH),9,entryd);
    78         }       
     63        entryi.word[0] = 0;
     64        entryi.word[1] = 0;
    7965       
    80 
     66        entryi.p = true;                 /* present */
     67        entryi.ma = MA_WRITEBACK;
     68        entryi.a = true;                 /* already accessed */
     69        entryi.d = true;                 /* already dirty */
     70        entryi.pl = PL_KERNEL;
     71        entryi.ar = AR_READ | AR_EXECUTE;
     72        entryi.ppn = 0;
     73        entryi.ps = PAGE_WIDTH;
     74       
     75        for (i = 0; i < 100; i++) {
     76                itc_mapping_insert(0 + i * (1 << PAGE_WIDTH), 8, entryi);
     77                dtc_mapping_insert(0 + i * (1 << PAGE_WIDTH), 9, entryd);
     78        }
     79       
    8180        tlb_invalidate_pages(8,0x0c000,14);
    8281       
    8382        /*tlb_invalidate_all();*/
    84        
    8583}
     84
     85#else
     86
     87void test_purge1(void)
     88{
     89        printf("This test is availaible only on IA64 platform.\n");
     90}
     91
     92#endif
Note: See TracChangeset for help on using the changeset viewer.