mirror of
https://github.com/torvalds/linux.git
synced 2026-06-04 20:46:48 +02:00
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:
parent
dc1a277507
commit
3b38d35157
|
|
@ -216,6 +216,22 @@ static int intel_memory_region_memtest(struct intel_memory_region *mem,
|
||||||
return err;
|
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 *
|
struct intel_memory_region *
|
||||||
intel_memory_region_create(struct drm_i915_private *i915,
|
intel_memory_region_create(struct drm_i915_private *i915,
|
||||||
resource_size_t start,
|
resource_size_t start,
|
||||||
|
|
@ -244,6 +260,9 @@ intel_memory_region_create(struct drm_i915_private *i915,
|
||||||
mem->type = type;
|
mem->type = type;
|
||||||
mem->instance = instance;
|
mem->instance = instance;
|
||||||
|
|
||||||
|
snprintf(mem->uabi_name, sizeof(mem->uabi_name), "%s%u",
|
||||||
|
region_type_str(type), instance);
|
||||||
|
|
||||||
mutex_init(&mem->objects.lock);
|
mutex_init(&mem->objects.lock);
|
||||||
INIT_LIST_HEAD(&mem->objects.list);
|
INIT_LIST_HEAD(&mem->objects.list);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -80,6 +80,7 @@ struct intel_memory_region {
|
||||||
u16 instance;
|
u16 instance;
|
||||||
enum intel_region_id id;
|
enum intel_region_id id;
|
||||||
char name[16];
|
char name[16];
|
||||||
|
char uabi_name[16];
|
||||||
bool private; /* not for userspace */
|
bool private; /* not for userspace */
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user