Include dependency graph for asid.c:
Go to the source code of this file.
Functions | |
SPINLOCK_INITIALIZE (asidlock) | |
asid_t | asid_get (void) |
void | asid_put (asid_t asid) |
Variables | |
static count_t | asids_allocated = 0 |
Unfortunatelly, there are usually less ASIDs available than there can be unique as_t structures (i.e. address spaces recognized by the kernel).
When system runs short of ASIDs, it will attempt to steal ASID from an address space that has not been active for a while.
This code depends on the fact that ASIDS_ALLOCABLE is greater than number of supported CPUs (i.e. the amount of concurently active address spaces).
Architectures that don't have hardware support for address spaces do not compile with this file.
Definition in file asid.c.