Subversion Repositories HelenOS-historic

Rev

Rev 396 | Rev 399 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 396 Rev 397
Line 84... Line 84...
84
void tlb_refill(struct exception_regdump *pstate)
84
void tlb_refill(struct exception_regdump *pstate)
85
{
85
{
86
    entry_lo_t lo;
86
    entry_lo_t lo;
87
    __address badvaddr;
87
    __address badvaddr;
88
    pte_t *pte;
88
    pte_t *pte;
-
 
89
 
-
 
90
// debug    
-
 
91
    entry_hi_t hi;
89
   
92
 
90
    badvaddr = cp0_badvaddr_read();
93
    badvaddr = cp0_badvaddr_read();
-
 
94
 
-
 
95
// debug
-
 
96
    hi.value = cp0_entry_hi_read();
-
 
97
    printf("TLB Refill: hi.vnp2=%X\n", hi.vpn2);
91
   
98
   
92
    spinlock_lock(&VM->lock);      
99
    spinlock_lock(&VM->lock);      
93
    pte = find_mapping_and_check(badvaddr);
100
    pte = find_mapping_and_check(badvaddr);
94
    if (!pte)
101
    if (!pte)
95
        goto fail;
102
        goto fail;