]> Git Repo - J-linux.git/blobdiff - drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
Merge tag 'kbuild-v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy...
[J-linux.git] / drivers / gpu / drm / amd / amdgpu / amdgpu_object.c
index b671b06654923d7a1cdfe4d528bc75a91c661240..010b0cb7693c9c3be5608f192cb19e583a285893 100644 (file)
@@ -1273,25 +1273,36 @@ void amdgpu_bo_get_memory(struct amdgpu_bo *bo,
                          struct amdgpu_mem_stats *stats)
 {
        uint64_t size = amdgpu_bo_size(bo);
+       struct drm_gem_object *obj;
        unsigned int domain;
+       bool shared;
 
        /* Abort if the BO doesn't currently have a backing store */
        if (!bo->tbo.resource)
                return;
 
+       obj = &bo->tbo.base;
+       shared = drm_gem_object_is_shared_for_memory_stats(obj);
+
        domain = amdgpu_mem_type_to_domain(bo->tbo.resource->mem_type);
        switch (domain) {
        case AMDGPU_GEM_DOMAIN_VRAM:
                stats->vram += size;
                if (amdgpu_bo_in_cpu_visible_vram(bo))
                        stats->visible_vram += size;
+               if (shared)
+                       stats->vram_shared += size;
                break;
        case AMDGPU_GEM_DOMAIN_GTT:
                stats->gtt += size;
+               if (shared)
+                       stats->gtt_shared += size;
                break;
        case AMDGPU_GEM_DOMAIN_CPU:
        default:
                stats->cpu += size;
+               if (shared)
+                       stats->cpu_shared += size;
                break;
        }
 
This page took 0.029204 seconds and 4 git commands to generate.