drm/i915: Add stable memory region names

At the moment memory region names are a bit too varied and too
inconsistent to be used for ABI purposes, like for upcoming fdinfo
memory stats.

System memory can be either system or system-ttm. Local memory has the
instance number appended, others do not. Not only incosistent but thi
kind of implementation detail is uninteresting for intended users of
fdinfo memory stats.

Add a stable name always formed as $type$instance. Could have chosen a
different stable scheme, but I think any consistent and stable scheme
should do just fine.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231107101806.608990-5-tvrtko.ursulin@linux.intel.com
This commit is contained in:
Tvrtko Ursulin 2023-11-07 10:18:05 +00:00
parent dc1a277507
commit 3b38d35157
2 changed files with 20 additions and 0 deletions

View File

@ -216,6 +216,22 @@ static int intel_memory_region_memtest(struct intel_memory_region *mem,
return err;
}
static const char *region_type_str(u16 type)
{
switch (type) {
case INTEL_MEMORY_SYSTEM:
return "system";
case INTEL_MEMORY_LOCAL:
return "local";
case INTEL_MEMORY_STOLEN_LOCAL:
return "stolen-local";
case INTEL_MEMORY_STOLEN_SYSTEM:
return "stolen-system";
default:
return "unknown";
}
}
struct intel_memory_region *
intel_memory_region_create(struct drm_i915_private *i915,
resource_size_t start,
@ -244,6 +260,9 @@ intel_memory_region_create(struct drm_i915_private *i915,
mem->type = type;
mem->instance = instance;
snprintf(mem->uabi_name, sizeof(mem->uabi_name), "%s%u",
region_type_str(type), instance);
mutex_init(&mem->objects.lock);
INIT_LIST_HEAD(&mem->objects.list);

View File

@ -80,6 +80,7 @@ struct intel_memory_region {
u16 instance;
enum intel_region_id id;
char name[16];
char uabi_name[16];
bool private; /* not for userspace */
struct {