Home | History | Annotate | Download | only in vmwgfx

Lines Matching refs:dirty

77  * vmw_surface_dirty - Surface dirty-tracker
81 * @boxes: Array of SVGA3dBoxes indicating dirty regions. One per subresource.
533 * backup buffer is dirty.
673 WARN_ON_ONCE(res->dirty);
1212 if (res->backup->dirty && res->backup_dirty) {
1213 /* We've just made a full upload. Cear dirty regions. */
1828 * vmw_subres_dirty_add - Add a dirty region to a subresource
1829 * @dirty: The surfaces's dirty tracker.
1839 static void vmw_subres_dirty_add(struct vmw_surface_dirty *dirty,
1843 const struct svga3dsurface_cache *cache = &dirty->cache;
1844 SVGA3dBox *box = &dirty->boxes[loc_start->sub_resource];
1849 if (WARN_ON(loc_start->sub_resource >= dirty->num_subres))
1883 * vmw_subres_dirty_full - Mark a full subresource as dirty
1884 * @dirty: The surface's dirty tracker.
1887 static void vmw_subres_dirty_full(struct vmw_surface_dirty *dirty, u32 subres)
1889 const struct svga3dsurface_cache *cache = &dirty->cache;
1892 SVGA3dBox *box = &dirty->boxes[subres];
1909 struct vmw_surface_dirty *dirty =
1910 (struct vmw_surface_dirty *) res->dirty;
1917 cache = &dirty->cache;
1923 /* Dirty range covers a single sub-resource */
1924 vmw_subres_dirty_add(dirty, &loc1, &loc2);
1926 /* Dirty range covers multiple sub-resources */
1931 vmw_subres_dirty_add(dirty, &loc1, &loc_max);
1933 vmw_subres_dirty_add(dirty, &loc_min, &loc2);
1936 vmw_subres_dirty_full(dirty, sub_res);
1947 struct vmw_surface_dirty *dirty =
1948 (struct vmw_surface_dirty *) res->dirty;
1949 const struct svga3dsurface_cache *cache = &dirty->cache;
1951 SVGA3dBox *box = &dirty->boxes[0];
1990 struct vmw_surface_dirty *dirty =
1991 (struct vmw_surface_dirty *) res->dirty;
1993 const struct svga3dsurface_cache *cache = &dirty->cache;
2005 for (i = 0; i < dirty->num_subres; ++i) {
2006 const SVGA3dBox *box = &dirty->boxes[i];
2023 for (i = 0; i < dirty->num_subres; ++i) {
2024 const SVGA3dBox *box = &dirty->boxes[i];
2054 memset(&dirty->boxes[0], 0, sizeof(dirty->boxes[0]) *
2055 dirty->num_subres);
2066 struct vmw_surface_dirty *dirty;
2088 dirty_size = sizeof(*dirty) + num_subres * sizeof(dirty->boxes[0]);
2094 "dirty tracker.\n");
2098 dirty = kvzalloc(dirty_size, GFP_KERNEL);
2099 if (!dirty) {
2106 num_layers, num_samples, &dirty->cache);
2110 dirty->num_subres = num_subres;
2111 dirty->size = acc_size;
2112 res->dirty = (struct vmw_resource_dirty *) dirty;
2117 kvfree(dirty);
2128 struct vmw_surface_dirty *dirty =
2129 (struct vmw_surface_dirty *) res->dirty;
2130 size_t acc_size = dirty->size;
2132 kvfree(dirty);
2134 res->dirty = NULL;