Lines Matching refs:htable

36 #include <asm/htable.h>
48 * We use a reference counter mechanism to detect when we can free an htable.
51 * ht_busy is a traditional reference count of uses of the htable pointer
62 * busy == 1 and valid_cnt == 0, the htable can be free'd.
67 struct htable {
68 struct htable *ht_next; /* forward link for hash table */
78 struct htable *ht_prev; /* backward link for hash table */
79 struct htable *ht_parent; /* htable that points to this htable */
80 struct htable *ht_shares; /* for HTABLE_SHARED_PFN only */
82 typedef struct htable htable_t;
85 * Flags values for htable ht_flags field:
87 * HTABLE_VLP - this is the top level htable of a VLP HAT.
89 * HTABLE_SHARED_PFN - this htable had its PFN assigned from sharing another
90 * htable. Used by hat_share() for ISM.
96 * The htable hash table hashing function. The 28 is so that high
100 * that the secondary hash for the htable mutex winds up begin different in
121 * Compute the last page aligned VA mapped by an htable.
160 * Functions to lookup, or "lookup and create", the htable corresponding
164 * On return the given htable is marked busy (a shared lock) - this prevents
165 * the htable from being stolen or freed) until htable_release() is called.
168 * routines for this htable, since it's for the kernel hat itself.
170 * htable_acquire() is used when an htable pointer has been extracted from
171 * an hment and we need to get a reference to the htable.
188 * Find the htable, page table entry index, and PTE of the given virtual
190 * sets entry, and has a hold on the htable.
208 * Used to readjust the htable reserve after the reserve list has been used.
222 extern void htable_attach(struct hat *, uintptr_t, level_t, struct htable *,
226 * Routine to find the next populated htable at or above a given virtual
259 * Interfaces that provide access to page table entries via the htable.