i965: Rename intel_bufferobj_* functions to match GL and DD hooks.

The GL functions and driver hooks use corresponding names---for example,
glMapBufferRange and Driver.MapBufferRange.  But our implementation was
called "intel_bufferobj_map_range," which has the words "map" and
"buffer" swapped, as well as randomly adding "obj."

FlushMappedBufferRange was even trickier: it ordered the words
3, "obj", 1, 2, 4: intel_bufferobj_flush_mapped_range.

Even though the old names were consistent, I always had trouble
rearranging the jumble of words when searching for a function,
and it took a few tries to eventually land there.

The new names match the word order of GL and the driver hooks;
FlushMappedBufferRange is simply brw_flush_mapped_buffer_range.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
This commit is contained in:
Kenneth Graunke 2014-10-28 01:05:12 -07:00
parent 993e2922c9
commit 1480814173

View file

@ -81,12 +81,8 @@ brw_bo_map_gtt(struct brw_context *brw, drm_intel_bo *bo, const char *bo_name)
return ret; return ret;
} }
static GLboolean
intel_bufferobj_unmap(struct gl_context * ctx, struct gl_buffer_object *obj,
gl_map_buffer_index index);
static void static void
intel_bufferobj_mark_gpu_usage(struct intel_buffer_object *intel_obj, mark_buffer_gpu_usage(struct intel_buffer_object *intel_obj,
uint32_t offset, uint32_t size) uint32_t offset, uint32_t size)
{ {
intel_obj->gpu_active_start = MIN2(intel_obj->gpu_active_start, offset); intel_obj->gpu_active_start = MIN2(intel_obj->gpu_active_start, offset);
@ -94,7 +90,7 @@ intel_bufferobj_mark_gpu_usage(struct intel_buffer_object *intel_obj,
} }
static void static void
intel_bufferobj_mark_inactive(struct intel_buffer_object *intel_obj) mark_buffer_inactive(struct intel_buffer_object *intel_obj)
{ {
intel_obj->gpu_active_start = ~0; intel_obj->gpu_active_start = ~0;
intel_obj->gpu_active_end = 0; intel_obj->gpu_active_end = 0;
@ -102,7 +98,7 @@ intel_bufferobj_mark_inactive(struct intel_buffer_object *intel_obj)
/** Allocates a new drm_intel_bo to store the data for the buffer object. */ /** Allocates a new drm_intel_bo to store the data for the buffer object. */
static void static void
intel_bufferobj_alloc_buffer(struct brw_context *brw, alloc_buffer_object(struct brw_context *brw,
struct intel_buffer_object *intel_obj) struct intel_buffer_object *intel_obj)
{ {
intel_obj->buffer = drm_intel_bo_alloc(brw->bufmgr, "bufferobj", intel_obj->buffer = drm_intel_bo_alloc(brw->bufmgr, "bufferobj",
@ -117,7 +113,7 @@ intel_bufferobj_alloc_buffer(struct brw_context *brw,
if (intel_obj->Base.UsageHistory & USAGE_ATOMIC_COUNTER_BUFFER) if (intel_obj->Base.UsageHistory & USAGE_ATOMIC_COUNTER_BUFFER)
brw->state.dirty.brw |= BRW_NEW_ATOMIC_BUFFER; brw->state.dirty.brw |= BRW_NEW_ATOMIC_BUFFER;
intel_bufferobj_mark_inactive(intel_obj); mark_buffer_inactive(intel_obj);
} }
static void static void
@ -138,7 +134,7 @@ release_buffer(struct intel_buffer_object *intel_obj)
* internal structure where somehow shared. * internal structure where somehow shared.
*/ */
static struct gl_buffer_object * static struct gl_buffer_object *
intel_bufferobj_alloc(struct gl_context * ctx, GLuint name) brw_new_buffer_object(struct gl_context * ctx, GLuint name)
{ {
struct intel_buffer_object *obj = CALLOC_STRUCT(intel_buffer_object); struct intel_buffer_object *obj = CALLOC_STRUCT(intel_buffer_object);
if (!obj) { if (!obj) {
@ -158,7 +154,7 @@ intel_bufferobj_alloc(struct gl_context * ctx, GLuint name)
* Deletes a single OpenGL buffer object. Used by glDeleteBuffers(). * Deletes a single OpenGL buffer object. Used by glDeleteBuffers().
*/ */
static void static void
intel_bufferobj_free(struct gl_context * ctx, struct gl_buffer_object *obj) brw_delete_buffer(struct gl_context * ctx, struct gl_buffer_object *obj)
{ {
struct intel_buffer_object *intel_obj = intel_buffer_object(obj); struct intel_buffer_object *intel_obj = intel_buffer_object(obj);
@ -186,7 +182,7 @@ intel_bufferobj_free(struct gl_context * ctx, struct gl_buffer_object *obj)
* \return true for success, false if out of memory * \return true for success, false if out of memory
*/ */
static GLboolean static GLboolean
intel_bufferobj_data(struct gl_context * ctx, brw_buffer_data(struct gl_context *ctx,
GLenum target, GLenum target,
GLsizeiptrARB size, GLsizeiptrARB size,
const GLvoid *data, const GLvoid *data,
@ -212,7 +208,7 @@ intel_bufferobj_data(struct gl_context * ctx,
release_buffer(intel_obj); release_buffer(intel_obj);
if (size != 0) { if (size != 0) {
intel_bufferobj_alloc_buffer(brw, intel_obj); alloc_buffer_object(brw, intel_obj);
if (!intel_obj->buffer) if (!intel_obj->buffer)
return false; return false;
@ -234,10 +230,11 @@ intel_bufferobj_data(struct gl_context * ctx,
* the buffer or if data is NULL, no copy is performed. * the buffer or if data is NULL, no copy is performed.
*/ */
static void static void
intel_bufferobj_subdata(struct gl_context * ctx, brw_buffer_subdata(struct gl_context *ctx,
GLintptrARB offset, GLintptrARB offset,
GLsizeiptrARB size, GLsizeiptrARB size,
const GLvoid * data, struct gl_buffer_object *obj) const GLvoid *data,
struct gl_buffer_object *obj)
{ {
struct brw_context *brw = brw_context(ctx); struct brw_context *brw = brw_context(ctx);
struct intel_buffer_object *intel_obj = intel_buffer_object(obj); struct intel_buffer_object *intel_obj = intel_buffer_object(obj);
@ -278,7 +275,7 @@ intel_bufferobj_subdata(struct gl_context * ctx,
if (size == intel_obj->Base.Size) { if (size == intel_obj->Base.Size) {
/* Replace the current busy bo so the subdata doesn't stall. */ /* Replace the current busy bo so the subdata doesn't stall. */
drm_intel_bo_unreference(intel_obj->buffer); drm_intel_bo_unreference(intel_obj->buffer);
intel_bufferobj_alloc_buffer(brw, intel_obj); alloc_buffer_object(brw, intel_obj);
} else if (!intel_obj->prefer_stall_to_blit) { } else if (!intel_obj->prefer_stall_to_blit) {
perf_debug("Using a blit copy to avoid stalling on " perf_debug("Using a blit copy to avoid stalling on "
"glBufferSubData(%ld, %ld) (%ldkb) to a busy " "glBufferSubData(%ld, %ld) (%ldkb) to a busy "
@ -310,7 +307,7 @@ intel_bufferobj_subdata(struct gl_context * ctx,
} }
drm_intel_bo_subdata(intel_obj->buffer, offset, size, data); drm_intel_bo_subdata(intel_obj->buffer, offset, size, data);
intel_bufferobj_mark_inactive(intel_obj); mark_buffer_inactive(intel_obj);
} }
@ -321,10 +318,11 @@ intel_bufferobj_subdata(struct gl_context * ctx,
* object into user memory. * object into user memory.
*/ */
static void static void
intel_bufferobj_get_subdata(struct gl_context * ctx, brw_get_buffer_subdata(struct gl_context *ctx,
GLintptrARB offset, GLintptrARB offset,
GLsizeiptrARB size, GLsizeiptrARB size,
GLvoid * data, struct gl_buffer_object *obj) GLvoid *data,
struct gl_buffer_object *obj)
{ {
struct intel_buffer_object *intel_obj = intel_buffer_object(obj); struct intel_buffer_object *intel_obj = intel_buffer_object(obj);
struct brw_context *brw = brw_context(ctx); struct brw_context *brw = brw_context(ctx);
@ -335,7 +333,7 @@ intel_bufferobj_get_subdata(struct gl_context * ctx,
} }
drm_intel_bo_get_subdata(intel_obj->buffer, offset, size, data); drm_intel_bo_get_subdata(intel_obj->buffer, offset, size, data);
intel_bufferobj_mark_inactive(intel_obj); mark_buffer_inactive(intel_obj);
} }
@ -358,7 +356,7 @@ intel_bufferobj_get_subdata(struct gl_context * ctx,
* and blit it into the real BO at unmap time. * and blit it into the real BO at unmap time.
*/ */
static void * static void *
intel_bufferobj_map_range(struct gl_context * ctx, brw_map_buffer_range(struct gl_context *ctx,
GLintptr offset, GLsizeiptr length, GLintptr offset, GLsizeiptr length,
GLbitfield access, struct gl_buffer_object *obj, GLbitfield access, struct gl_buffer_object *obj,
gl_map_buffer_index index) gl_map_buffer_index index)
@ -392,7 +390,7 @@ intel_bufferobj_map_range(struct gl_context * ctx,
if (drm_intel_bo_references(brw->batch.bo, intel_obj->buffer)) { if (drm_intel_bo_references(brw->batch.bo, intel_obj->buffer)) {
if (access & GL_MAP_INVALIDATE_BUFFER_BIT) { if (access & GL_MAP_INVALIDATE_BUFFER_BIT) {
drm_intel_bo_unreference(intel_obj->buffer); drm_intel_bo_unreference(intel_obj->buffer);
intel_bufferobj_alloc_buffer(brw, intel_obj); alloc_buffer_object(brw, intel_obj);
} else { } else {
perf_debug("Stalling on the GPU for mapping a busy buffer " perf_debug("Stalling on the GPU for mapping a busy buffer "
"object\n"); "object\n");
@ -401,7 +399,7 @@ intel_bufferobj_map_range(struct gl_context * ctx,
} else if (drm_intel_bo_busy(intel_obj->buffer) && } else if (drm_intel_bo_busy(intel_obj->buffer) &&
(access & GL_MAP_INVALIDATE_BUFFER_BIT)) { (access & GL_MAP_INVALIDATE_BUFFER_BIT)) {
drm_intel_bo_unreference(intel_obj->buffer); drm_intel_bo_unreference(intel_obj->buffer);
intel_bufferobj_alloc_buffer(brw, intel_obj); alloc_buffer_object(brw, intel_obj);
} }
} }
@ -444,11 +442,11 @@ intel_bufferobj_map_range(struct gl_context * ctx,
else if (!brw->has_llc && (!(access & GL_MAP_READ_BIT) || else if (!brw->has_llc && (!(access & GL_MAP_READ_BIT) ||
(access & GL_MAP_PERSISTENT_BIT))) { (access & GL_MAP_PERSISTENT_BIT))) {
drm_intel_gem_bo_map_gtt(intel_obj->buffer); drm_intel_gem_bo_map_gtt(intel_obj->buffer);
intel_bufferobj_mark_inactive(intel_obj); mark_buffer_inactive(intel_obj);
} else { } else {
brw_bo_map(brw, intel_obj->buffer, (access & GL_MAP_WRITE_BIT) != 0, brw_bo_map(brw, intel_obj->buffer, (access & GL_MAP_WRITE_BIT) != 0,
"MapBufferRange"); "MapBufferRange");
intel_bufferobj_mark_inactive(intel_obj); mark_buffer_inactive(intel_obj);
} }
obj->Mappings[index].Pointer = intel_obj->buffer->virtual + offset; obj->Mappings[index].Pointer = intel_obj->buffer->virtual + offset;
@ -469,7 +467,7 @@ intel_bufferobj_map_range(struct gl_context * ctx,
* would defeat the point. * would defeat the point.
*/ */
static void static void
intel_bufferobj_flush_mapped_range(struct gl_context *ctx, brw_flush_mapped_buffer_range(struct gl_context *ctx,
GLintptr offset, GLsizeiptr length, GLintptr offset, GLsizeiptr length,
struct gl_buffer_object *obj, struct gl_buffer_object *obj,
gl_map_buffer_index index) gl_map_buffer_index index)
@ -517,7 +515,7 @@ intel_bufferobj_flush_mapped_range(struct gl_context *ctx,
intel_obj->range_map_bo[index], intel_obj->range_map_bo[index],
intel_obj->map_extra[index] + offset, intel_obj->map_extra[index] + offset,
length); length);
intel_bufferobj_mark_gpu_usage(intel_obj, mark_buffer_gpu_usage(intel_obj,
obj->Mappings[index].Offset + offset, obj->Mappings[index].Offset + offset,
length); length);
} }
@ -529,7 +527,8 @@ intel_bufferobj_flush_mapped_range(struct gl_context *ctx,
* Implements glUnmapBuffer(). * Implements glUnmapBuffer().
*/ */
static GLboolean static GLboolean
intel_bufferobj_unmap(struct gl_context * ctx, struct gl_buffer_object *obj, brw_unmap_buffer(struct gl_context *ctx,
struct gl_buffer_object *obj,
gl_map_buffer_index index) gl_map_buffer_index index)
{ {
struct brw_context *brw = brw_context(ctx); struct brw_context *brw = brw_context(ctx);
@ -546,7 +545,7 @@ intel_bufferobj_unmap(struct gl_context * ctx, struct gl_buffer_object *obj,
intel_obj->range_map_bo[index], intel_obj->range_map_bo[index],
intel_obj->map_extra[index], intel_obj->map_extra[index],
obj->Mappings[index].Length); obj->Mappings[index].Length);
intel_bufferobj_mark_gpu_usage(intel_obj, obj->Mappings[index].Offset, mark_buffer_gpu_usage(intel_obj, obj->Mappings[index].Offset,
obj->Mappings[index].Length); obj->Mappings[index].Length);
} }
@ -586,9 +585,9 @@ intel_bufferobj_buffer(struct brw_context *brw,
* draw-time validation can just always get a BO from a GL buffer object. * draw-time validation can just always get a BO from a GL buffer object.
*/ */
if (intel_obj->buffer == NULL) if (intel_obj->buffer == NULL)
intel_bufferobj_alloc_buffer(brw, intel_obj); alloc_buffer_object(brw, intel_obj);
intel_bufferobj_mark_gpu_usage(intel_obj, offset, size); mark_buffer_gpu_usage(intel_obj, offset, size);
return intel_obj->buffer; return intel_obj->buffer;
} }
@ -601,7 +600,7 @@ intel_bufferobj_buffer(struct brw_context *brw,
* are allowed. * are allowed.
*/ */
static void static void
intel_bufferobj_copy_subdata(struct gl_context *ctx, brw_copy_buffer_subdata(struct gl_context *ctx,
struct gl_buffer_object *src, struct gl_buffer_object *src,
struct gl_buffer_object *dst, struct gl_buffer_object *dst,
GLintptr read_offset, GLintptr write_offset, GLintptr read_offset, GLintptr write_offset,
@ -633,13 +632,13 @@ intel_bufferobj_copy_subdata(struct gl_context *ctx,
void void
intelInitBufferObjectFuncs(struct dd_function_table *functions) intelInitBufferObjectFuncs(struct dd_function_table *functions)
{ {
functions->NewBufferObject = intel_bufferobj_alloc; functions->NewBufferObject = brw_new_buffer_object;
functions->DeleteBuffer = intel_bufferobj_free; functions->DeleteBuffer = brw_delete_buffer;
functions->BufferData = intel_bufferobj_data; functions->BufferData = brw_buffer_data;
functions->BufferSubData = intel_bufferobj_subdata; functions->BufferSubData = brw_buffer_subdata;
functions->GetBufferSubData = intel_bufferobj_get_subdata; functions->GetBufferSubData = brw_get_buffer_subdata;
functions->MapBufferRange = intel_bufferobj_map_range; functions->MapBufferRange = brw_map_buffer_range;
functions->FlushMappedBufferRange = intel_bufferobj_flush_mapped_range; functions->FlushMappedBufferRange = brw_flush_mapped_buffer_range;
functions->UnmapBuffer = intel_bufferobj_unmap; functions->UnmapBuffer = brw_unmap_buffer;
functions->CopyBufferSubData = intel_bufferobj_copy_subdata; functions->CopyBufferSubData = brw_copy_buffer_subdata;
} }