Changeset a60c748 in mainline for arch/ia64/include/mm/asid.h


Ignore:
Timestamp:
2006-01-30T16:40:23Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
6a3c9a7
Parents:
d4efc19
Message:

Convert ASID management of ia64 to ASID FIFO mechanism.
18-bit RIDs are supported.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/ia64/include/mm/asid.h

    rd4efc19 ra60c748  
    3232#include <arch/types.h>
    3333
    34 typedef __u32 asid_t;
     34typedef __u16 asid_t;
    3535
    3636/**
    37  * This macro eliminates the stealing branch of asid_get().
     37 * Number of ia64 RIDs (Region Identifiers) per kernel ASID.
     38 * Note that some architectures may support more bits,
     39 * but those extra bits are not used by the kernel.
    3840 */
    39 #define ASID_STEALING_ENABLED   0
    40 
    41 /** Number of ia64 RIDs (Region Identifiers) per kernel ASID. */
    4241#define RIDS_PER_ASID           7
    43 #define RID_OVERFLOW            16777216        /* 2^24 */
     42#define RID_MAX                 262143          /* 2^18 - 1 */
    4443
    4544#define ASID2RID(asid, vrn)     (((asid)*RIDS_PER_ASID)+(vrn))
     
    4847typedef __u32 rid_t;
    4948
    50 /**
    51  * This macro is needed only to compile the kernel.
    52  * On ia64, its value is ignored.
    53  */
    54 #define ASID_MAX_ARCH           0
    55 
    56 /**
    57  * Value used to recognize the situation when all ASIDs were already allocated.
    58  */
    59 #define ASID_OVERFLOW           (RID_OVERFLOW/RIDS_PER_ASID)
    60 
    61 /** On ia64, this is no-op. */
    62 #define asid_put_arch(x)
     49#define ASID_MAX_ARCH           (RID_MAX/RIDS_PER_ASID)
    6350
    6451#endif
Note: See TracChangeset for help on using the changeset viewer.