Lines Matching refs:mig

2664 	struct mi_globals *mig;  in nfs_mi_init()  local
2666 mig = kmem_alloc(sizeof (*mig), KM_SLEEP); in nfs_mi_init()
2667 mutex_init(&mig->mig_lock, NULL, MUTEX_DEFAULT, NULL); in nfs_mi_init()
2668 list_create(&mig->mig_list, sizeof (mntinfo_t), in nfs_mi_init()
2670 mig->mig_destructor_called = B_FALSE; in nfs_mi_init()
2671 return (mig); in nfs_mi_init()
2682 struct mi_globals *mig = data; in nfs_mi_shutdown() local
2685 ASSERT(mig != NULL); in nfs_mi_shutdown()
2687 mutex_enter(&mig->mig_lock); in nfs_mi_shutdown()
2688 for (mi = list_head(&mig->mig_list); mi != NULL; in nfs_mi_shutdown()
2689 mi = list_next(&mig->mig_list, mi)) { in nfs_mi_shutdown()
2732 mutex_exit(&mig->mig_lock); in nfs_mi_shutdown()
2736 mutex_exit(&mig->mig_lock); in nfs_mi_shutdown()
2740 nfs_mi_free_globals(struct mi_globals *mig) in nfs_mi_free_globals() argument
2742 list_destroy(&mig->mig_list); /* makes sure the list is empty */ in nfs_mi_free_globals()
2743 mutex_destroy(&mig->mig_lock); in nfs_mi_free_globals()
2744 kmem_free(mig, sizeof (*mig)); in nfs_mi_free_globals()
2752 struct mi_globals *mig = data; in nfs_mi_destroy() local
2754 ASSERT(mig != NULL); in nfs_mi_destroy()
2755 mutex_enter(&mig->mig_lock); in nfs_mi_destroy()
2756 if (list_head(&mig->mig_list) != NULL) { in nfs_mi_destroy()
2758 mig->mig_destructor_called = B_TRUE; in nfs_mi_destroy()
2759 mutex_exit(&mig->mig_lock); in nfs_mi_destroy()
2762 nfs_mi_free_globals(mig); in nfs_mi_destroy()
2771 struct mi_globals *mig; in nfs_mi_zonelist_add() local
2773 mig = zone_getspecific(mi_list_key, mi->mi_zone); in nfs_mi_zonelist_add()
2774 mutex_enter(&mig->mig_lock); in nfs_mi_zonelist_add()
2775 list_insert_head(&mig->mig_list, mi); in nfs_mi_zonelist_add()
2776 mutex_exit(&mig->mig_lock); in nfs_mi_zonelist_add()
2785 struct mi_globals *mig; in nfs_mi_zonelist_remove() local
2787 mig = zone_getspecific(mi_list_key, mi->mi_zone); in nfs_mi_zonelist_remove()
2788 mutex_enter(&mig->mig_lock); in nfs_mi_zonelist_remove()
2789 list_remove(&mig->mig_list, mi); in nfs_mi_zonelist_remove()
2795 if (list_head(&mig->mig_list) == NULL && in nfs_mi_zonelist_remove()
2796 mig->mig_destructor_called == B_TRUE) { in nfs_mi_zonelist_remove()
2797 nfs_mi_free_globals(mig); in nfs_mi_zonelist_remove()
2800 mutex_exit(&mig->mig_lock); in nfs_mi_zonelist_remove()