Changeset fa7d9c4 in mainline for genarch/src/mm/asid.c


Ignore:
Timestamp:
2006-01-24T20:30:26Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
cc5412e
Parents:
36b01bb2
Message:

Unlock address space prior TLB shootdown in get_asid() to unify
the locking order among mips32, sparc64 and ia64.

Add ASID_STEALING_ENABLED macro to disable the stealing part on ia64
in a clean way.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • genarch/src/mm/asid.c

    r36b01bb2 rfa7d9c4  
    9595        ipl = interrupts_disable();
    9696        spinlock_lock(&asidlock);
    97         if (asids_allocated == ASIDS_ALLOCABLE) {
     97        if (ASID_STEALING_ENABLED && asids_allocated == ASIDS_ALLOCABLE) {
    9898
    9999                /*
     
    122122
    123123                /*
     124                 * Notify the address space from wich the ASID
     125                 * was stolen by invalidating its asid member.
     126                 */
     127                as->asid = ASID_INVALID;
     128                spinlock_unlock(&as->lock);
     129
     130                /*
    124131                 * Get the system rid of the stolen ASID.
    125132                 */
     
    127134                tlb_shootdown_finalize();
    128135                tlb_invalidate_asid(asid);
    129                 as->asid = ASID_INVALID;
    130                
    131                 spinlock_unlock(&as->lock);
    132136        } else {
    133137
Note: See TracChangeset for help on using the changeset viewer.