Lines Matching refs:gman

57 	struct vmwgfx_gmrid_man *gman = to_gmrid_manager(man);  in vmw_gmrid_man_get_node()  local
66 id = ida_alloc_max(&gman->gmr_ida, gman->max_gmr_ids - 1, GFP_KERNEL); in vmw_gmrid_man_get_node()
73 spin_lock(&gman->lock); in vmw_gmrid_man_get_node()
75 if (gman->max_gmr_pages > 0) { in vmw_gmrid_man_get_node()
76 gman->used_gmr_pages += PFN_UP((*res)->size); in vmw_gmrid_man_get_node()
84 if (unlikely(gman->used_gmr_pages > gman->max_gmr_pages)) { in vmw_gmrid_man_get_node()
91 if (gman->max_gmr_pages > (max_graphics_pages / 2)) { in vmw_gmrid_man_get_node()
95 new_max_pages = gman->max_gmr_pages * 2; in vmw_gmrid_man_get_node()
96 if (new_max_pages > gman->max_gmr_pages && new_max_pages >= gman->used_gmr_pages) { in vmw_gmrid_man_get_node()
100 gman->max_gmr_pages = new_max_pages; in vmw_gmrid_man_get_node()
105 ((gman->max_gmr_pages) << (PAGE_SHIFT - 10))); in vmw_gmrid_man_get_node()
115 spin_unlock(&gman->lock); in vmw_gmrid_man_get_node()
119 gman->used_gmr_pages -= PFN_UP((*res)->size); in vmw_gmrid_man_get_node()
120 spin_unlock(&gman->lock); in vmw_gmrid_man_get_node()
121 ida_free(&gman->gmr_ida, id); in vmw_gmrid_man_get_node()
130 struct vmwgfx_gmrid_man *gman = to_gmrid_manager(man); in vmw_gmrid_man_put_node() local
132 ida_free(&gman->gmr_ida, res->start); in vmw_gmrid_man_put_node()
133 spin_lock(&gman->lock); in vmw_gmrid_man_put_node()
134 gman->used_gmr_pages -= PFN_UP(res->size); in vmw_gmrid_man_put_node()
135 spin_unlock(&gman->lock); in vmw_gmrid_man_put_node()
143 struct vmwgfx_gmrid_man *gman = to_gmrid_manager(man); in vmw_gmrid_man_debug() local
145 BUG_ON(gman->type != VMW_PL_GMR && gman->type != VMW_PL_MOB); in vmw_gmrid_man_debug()
148 (gman->type == VMW_PL_MOB) ? "Mob" : "GMR", in vmw_gmrid_man_debug()
149 gman->used_gmr_pages, gman->max_gmr_pages, gman->max_gmr_ids); in vmw_gmrid_man_debug()
157 struct vmwgfx_gmrid_man *gman = in vmw_gmrid_man_init() local
158 kzalloc(sizeof(*gman), GFP_KERNEL); in vmw_gmrid_man_init()
160 if (unlikely(!gman)) in vmw_gmrid_man_init()
163 man = &gman->manager; in vmw_gmrid_man_init()
168 spin_lock_init(&gman->lock); in vmw_gmrid_man_init()
169 gman->used_gmr_pages = 0; in vmw_gmrid_man_init()
170 ida_init(&gman->gmr_ida); in vmw_gmrid_man_init()
171 gman->type = type; in vmw_gmrid_man_init()
175 gman->max_gmr_ids = dev_priv->max_gmr_ids; in vmw_gmrid_man_init()
176 gman->max_gmr_pages = dev_priv->max_gmr_pages; in vmw_gmrid_man_init()
179 gman->max_gmr_ids = VMWGFX_NUM_MOB; in vmw_gmrid_man_init()
180 gman->max_gmr_pages = dev_priv->max_mob_pages; in vmw_gmrid_man_init()
185 ttm_set_driver_manager(&dev_priv->bdev, type, &gman->manager); in vmw_gmrid_man_init()
193 struct vmwgfx_gmrid_man *gman = to_gmrid_manager(man); in vmw_gmrid_man_fini() local
202 ida_destroy(&gman->gmr_ida); in vmw_gmrid_man_fini()
203 kfree(gman); in vmw_gmrid_man_fini()