Lines Matching defs:htable

37 #include <asm/htable.h>
49 * We use a reference counter mechanism to detect when we can free an htable.
52 * ht_busy is a traditional reference count of uses of the htable pointer
63 * busy == 1 and valid_cnt == 0, the htable can be free'd.
68 struct htable {
69 struct htable *ht_next; /* forward link for hash table */
79 struct htable *ht_prev; /* backward link for hash table */
80 struct htable *ht_parent; /* htable that points to this htable */
81 struct htable *ht_shares; /* for HTABLE_SHARED_PFN only */
83 typedef struct htable htable_t;
86 * Flags values for htable ht_flags field:
88 * HTABLE_VLP - this is the top level htable of a VLP HAT.
90 * HTABLE_SHARED_PFN - this htable had its PFN assigned from sharing another
91 * htable. Used by hat_share() for ISM.
97 * The htable hash table hashing function. The 28 is so that high
101 * that the secondary hash for the htable mutex winds up begin different in
122 * Compute the last page aligned VA mapped by an htable.
161 * Functions to lookup, or "lookup and create", the htable corresponding
165 * On return the given htable is marked busy (a shared lock) - this prevents
166 * the htable from being stolen or freed) until htable_release() is called.
169 * routines for this htable, since it's for the kernel hat itself.
171 * htable_acquire() is used when an htable pointer has been extracted from
172 * an hment and we need to get a reference to the htable.
189 * Find the htable, page table entry index, and PTE of the given virtual
191 * sets entry, and has a hold on the htable.
209 * Used to readjust the htable reserve after the reserve list has been used.
223 extern void htable_attach(struct hat *, uintptr_t, level_t, struct htable *,
227 * Routine to find the next populated htable at or above a given virtual
260 * Interfaces that provide access to page table entries via the htable.