diff options
Diffstat (limited to 'src/gallium/winsys/r600')
-rw-r--r-- | src/gallium/winsys/r600/drm/r600_priv.h | 3 | ||||
-rw-r--r-- | src/gallium/winsys/r600/drm/r600_state2.c | 3 | ||||
-rw-r--r-- | src/gallium/winsys/r600/drm/radeon_priv.h | 6 |
3 files changed, 8 insertions, 4 deletions
diff --git a/src/gallium/winsys/r600/drm/r600_priv.h b/src/gallium/winsys/r600/drm/r600_priv.h index 189644f31cd..710c66bcfd8 100644 --- a/src/gallium/winsys/r600/drm/r600_priv.h +++ b/src/gallium/winsys/r600/drm/r600_priv.h @@ -40,6 +40,9 @@ struct radeon { unsigned family; enum chip_class chip_class; boolean use_mem_constant; /* true for evergreen */ + struct pb_manager *mman; /* malloc manager */ + struct pb_manager *kman; /* kernel bo manager */ + struct pb_manager *cman; /* cached bo manager */ }; struct radeon *r600_new(int fd, unsigned device); diff --git a/src/gallium/winsys/r600/drm/r600_state2.c b/src/gallium/winsys/r600/drm/r600_state2.c index 779138656a6..1241bca244f 100644 --- a/src/gallium/winsys/r600/drm/r600_state2.c +++ b/src/gallium/winsys/r600/drm/r600_state2.c @@ -60,7 +60,7 @@ void radeon_bo_reference(struct radeon *radeon, struct radeon_bo *src); unsigned radeon_ws_bo_get_handle(struct radeon_ws_bo *pb_bo); - +void radeon_bo_pbmgr_flush_maps(struct pb_manager *_mgr); static int r600_group_id_register_offset(struct r600_context *ctx, unsigned offset) { @@ -1056,6 +1056,7 @@ void r600_context_flush(struct r600_context *ctx) /* suspend queries */ r600_context_queries_suspend(ctx); + radeon_bo_pbmgr_flush_maps(ctx->radeon->kman); #if 1 /* emit cs */ drmib.num_chunks = 2; diff --git a/src/gallium/winsys/r600/drm/radeon_priv.h b/src/gallium/winsys/r600/drm/radeon_priv.h index e780cfd96ad..4cb3fc79d43 100644 --- a/src/gallium/winsys/r600/drm/radeon_priv.h +++ b/src/gallium/winsys/r600/drm/radeon_priv.h @@ -85,12 +85,12 @@ struct radeon { unsigned family; enum chip_class chip_class; boolean use_mem_constant; /* true for evergreen */ - unsigned nstype; - struct radeon_stype_info *stype; - unsigned max_states; struct pb_manager *mman; /* malloc manager */ struct pb_manager *kman; /* kernel bo manager */ struct pb_manager *cman; /* cached bo manager */ + unsigned nstype; + struct radeon_stype_info *stype; + unsigned max_states; }; struct radeon_ws_bo { |