hme_blk
sfmmu_get_free_hblk(struct hme_blk **hmeblkpp, uint_t critical)
struct hme_blk *hblkp;
sfmmu_put_free_hblk(struct hme_blk *hmeblkp, uint_t critical)
struct hme_blk *hblkp;
sfmmu_hblk_swap(struct hme_blk *new)
struct hme_blk *old, *hblkp, *prev;
struct hme_blk *list = NULL;
struct hme_blk *found;
static struct hme_blk *
struct hme_blk *hmeblkp = NULL;
struct hme_blk *newhblkp;
struct hme_blk *shw_hblkp = NULL;
(struct hme_blk *)&nucleus_hblk8.list[index];
(struct hme_blk *)&nucleus_hblk1.list[index];
hmeblkp->hblk_next = (struct hme_blk *)NULL;
sfmmu_hblk_free(struct hme_blk **listp)
struct hme_blk *hmeblkp, *next_hmeblkp;
ASSERT(hmeblkp != (struct hme_blk *)hblk_reserve);
static struct hme_blk *
struct hme_blk *hmeblkp = NULL, *pr_hblk;
sfmmu_steal_this_hblk(struct hmehash_bucket *hmebp, struct hme_blk *hmeblkp,
uint64_t hblkpa, struct hme_blk *pr_hblk)
struct hme_blk *shw_hblkp;
struct hme_blk *list = NULL;
struct hme_blk *
struct hme_blk *hmeblkp;
struct hme_blk *hblk_dummy = 0;
hmeblkp = (struct hme_blk *)((uintptr_t)sfhme0 -
struct hme_blk *hmeblkp, int uselocks)
struct hme_blk *hmeblkp, pfn_t pfnum, int cache_flush_flag)
sfmmu_tlbcache_demap(caddr_t addr, sfmmu_t *sfmmup, struct hme_blk *hmeblkp,
sfmmu_tlb_demap(caddr_t addr, sfmmu_t *sfmmup, struct hme_blk *hmeblkp,
struct hme_blk *hmeblkp;
hmeblkp = (struct hme_blk *)addr;
hmeblkp = (struct hme_blk *)addr;
((struct hme_blk *)hblk_reserve)->hblk_nextpa =
chk_tte(tte_t *orig_old, tte_t *cur, tte_t *new, struct hme_blk *hmeblkp)
sfmmu_hblks_list_purge(struct hme_blk **listp, int dontfree)
struct hme_blk *hblkp, *pr_hblkp = NULL;
sfmmu_hblk_hash_add(struct hmehash_bucket *hmebp, struct hme_blk *hmeblkp,
sfmmu_hblk_hash_rm(struct hmehash_bucket *hmebp, struct hme_blk *hmeblkp,
struct hme_blk *pr_hblk, struct hme_blk **listp, int free_now)
struct hme_blk *shw_hblkp;
static struct hme_blk *
struct hme_blk *hmeblkp = NULL, *last_hmeblkp;
#define HBLK_RESERVE ((struct hme_blk *)hblk_reserve)
static struct hme_blk *freehblkp;
struct hme_blk *hmeblkp;
struct hme_blk *pr_hblk = NULL;
struct hme_blk *nx_hblk;
struct hme_blk *list = NULL;
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
static struct hme_blk *
struct hme_blk *hmeblkp, *pr_hblk, *list = NULL;
if (hmeblkp == (struct hme_blk *)hblk_reserve &&
sfmmu_tteload_addentry(sfmmu_t *sfmmup, struct hme_blk *hmeblkp, tte_t *ttep,
static struct hme_blk *
struct hme_blk *hmeblkp;
ASSERT(hmeblkp != (struct hme_blk *)hblk_reserve);
sfmmu_shadow_hcleanup(sfmmu_t *sfmmup, struct hme_blk *hmeblkp,
struct hme_blk *hmeblkp;
struct hme_blk *nx_hblk, *pr_hblk, *list = NULL;
struct hme_blk *hmeblkp;
struct hme_blk *pr_hblk;
struct hme_blk *list = NULL;
struct hme_blk *hmeblkp;
struct hme_blk *pr_hblk;
struct hme_blk *list = NULL;
struct hme_blk *hmeblkp, *list = NULL;
static struct hme_blk *sfmmu_shadow_hcreate(sfmmu_t *, caddr_t, int, uint_t);
static struct hme_blk *sfmmu_hblk_alloc(sfmmu_t *, caddr_t,
static caddr_t sfmmu_hblk_unload(struct hat *, struct hme_blk *, caddr_t,
static caddr_t sfmmu_hblk_sync(struct hat *, struct hme_blk *, caddr_t,
struct hme_blk *hmeblkp;
struct hme_blk *pr_hblk;
struct hme_blk *list;
static void sfmmu_hblk_free(struct hme_blk **);
static void sfmmu_hblks_list_purge(struct hme_blk **, int);
static uint_t sfmmu_get_free_hblk(struct hme_blk **, uint_t);
static uint_t sfmmu_put_free_hblk(struct hme_blk *, uint_t);
static struct hme_blk *sfmmu_hblk_steal(int);
struct hme_blk *, uint64_t, struct hme_blk *);
sfmmu_hblk_unlock(struct hme_blk *hmeblkp, caddr_t addr, caddr_t endaddr)
static caddr_t sfmmu_hblk_unlock(struct hme_blk *, caddr_t, caddr_t);
static struct hme_blk *sfmmu_tteload_find_hmeblk(sfmmu_t *,
static int sfmmu_tteload_addentry(sfmmu_t *, struct hme_blk *, tte_t *,
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
struct hme_blk *, int);
static void sfmmu_tlbcache_demap(caddr_t, sfmmu_t *, struct hme_blk *,
static void sfmmu_ismtlbcache_demap(caddr_t, sfmmu_t *, struct hme_blk *,
static void sfmmu_tlb_demap(caddr_t, sfmmu_t *, struct hme_blk *, int, int);
struct hme_blk *hmeblkp, *list = NULL;
static caddr_t sfmmu_hblk_chgattr(sfmmu_t *, struct hme_blk *, caddr_t,
sfmmu_hblk_chgattr(struct hat *sfmmup, struct hme_blk *hmeblkp, caddr_t addr,
static caddr_t sfmmu_hblk_chgprot(sfmmu_t *, struct hme_blk *, caddr_t,
static void sfmmu_shadow_hcleanup(sfmmu_t *, struct hme_blk *,
static void sfmmu_hblk_hash_rm(struct hmehash_bucket *, struct hme_blk *,
struct hme_blk *, struct hme_blk **, int);
static void sfmmu_hblk_hash_add(struct hmehash_bucket *, struct hme_blk *,
static struct hme_blk *sfmmu_check_pending_hblks(int);
struct hme_blk *hmeblkp, *list = NULL;
sfmmu_hblk_chgprot(sfmmu_t *sfmmup, struct hme_blk *hmeblkp, caddr_t addr,
struct hme_blk *hmeblkp;
struct hme_blk *pr_hblk = NULL;
struct hme_blk *nx_hblk;
struct hme_blk *list = NULL;
struct hme_blk *hmeblkp, *pr_hblk, *list = NULL;
sfmmu_hblk_unload(struct hat *sfmmup, struct hme_blk *hmeblkp, caddr_t addr,
struct hme_blk *hmeblkp, *list = NULL;
sfmmu_hblk_sync(struct hat *sfmmup, struct hme_blk *hmeblkp, caddr_t addr,
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
static void chk_tte(tte_t *, tte_t *, tte_t *, struct hme_blk *);
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp = NULL;
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
hmeblkp = (struct hme_blk *)buf;
struct hme_blk *hmeblkp;
hmeblkp = (struct hme_blk *)buf;
struct hme_blk *hmeblkp, *nx_hblk, *pr_hblk = NULL;
struct hme_blk *list = NULL, *last_hmeblkp;
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
struct hme_blk *hmeblkp;
struct hme_blk *hblk_next; /* on free list or on hash list */
struct hme_blk *hblk_shadow; /* pts to shadow hblk */
struct hme_blk *hmeblkp;
#define HME8BLK_SZ (sizeof (struct hme_blk) + \
#define HME1BLK_SZ (sizeof (struct hme_blk))
struct hme_blk *nx_hblk; \
struct hme_blk *pr_hblk; \
extern struct hme_blk *sfmmu_hmetohblk(struct sf_hment *);
struct hme_blk *chp_listp;
OFFSET(struct hme_blk, hblk_tag),
OFFSET(struct hme_blk, hblk_nextpa),
OFFSET(struct hme_blk, hblk_misc),
OFFSET(struct hme_blk, hblk_hme),
struct hme_blk *hmeblkp;