Subversion Repositories HelenOS-historic

Rev

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

Rev 740 Rev 741
Line 31... Line 31...
31
 
31
 
32
#include <arch/types.h>
32
#include <arch/types.h>
33
 
33
 
34
typedef __u32 asid_t;
34
typedef __u32 asid_t;
35
 
35
 
-
 
36
/**
-
 
37
 * This macro eliminates the stealing branch of asid_get().
-
 
38
 */
-
 
39
#define ASID_STEALING_ENABLED   0
-
 
40
 
36
/** Number of ia64 RIDs (Region Identifiers) per kernel ASID. */
41
/** Number of ia64 RIDs (Region Identifiers) per kernel ASID. */
37
#define RIDS_PER_ASID       7
42
#define RIDS_PER_ASID       7
38
#define RID_OVERFLOW        16777216    /* 2^24 */
43
#define RID_OVERFLOW        16777216    /* 2^24 */
39
 
44
 
40
/**
45
/**
41
 * The point is to have ASID_MAX_ARCH big enough
-
 
42
 * so that it is never reached and the ASID allocation
46
 * This macro is needed only to compile the kernel.
43
 * mechanism in asid_get() never resorts to stealing.
47
 * On ia64, its value is ignored.
44
 */
48
 */
45
#define ASID_MAX_ARCH       ((asid_t) -1)   /**< This value is never reached. */
49
#define ASID_MAX_ARCH       0
46
 
50
 
47
/**
51
/**
48
 * Value used to recognize the situation when all ASIDs were already allocated.
52
 * Value used to recognize the situation when all ASIDs were already allocated.
49
 */
53
 */
50
#define ASID_OVERFLOW       (RID_OVERFLOW/RIDS_PER_ASID)
54
#define ASID_OVERFLOW       (RID_OVERFLOW/RIDS_PER_ASID)