Messages in this thread | | | Date | Thu, 28 Sep 2023 13:24:46 +0200 | Subject | Re: [PATCH v7 5/5] drm/panfrost: Implement generic DRM object RSS reporting function | From | AngeloGioacchino Del Regno <> |
| |
Il 27/09/23 23:29, Adrián Larumbe ha scritto: > BO's RSS is updated every time new pages are allocated on demand and mapped > for the object at GPU page fault's IRQ handler, but only for heap buffers. > The reason this is unnecessary for non-heap buffers is that they are mapped > onto the GPU's VA space and backed by physical memory in their entirety at > BO creation time. > > This calculation is unnecessary for imported PRIME objects, since heap > buffers cannot be exported by our driver, and the actual BO RSS size is the > one reported in its attached dmabuf structure. > > Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com> > Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> > Reviewed-by: Steven Price <steven.price@arm.com> > --- > drivers/gpu/drm/panfrost/panfrost_gem.c | 15 +++++++++++++++ > drivers/gpu/drm/panfrost/panfrost_gem.h | 5 +++++ > drivers/gpu/drm/panfrost/panfrost_mmu.c | 1 + > 3 files changed, 21 insertions(+) > > diff --git a/drivers/gpu/drm/panfrost/panfrost_gem.c b/drivers/gpu/drm/panfrost/panfrost_gem.c > index 7d8f83d20539..4365434b48db 100644 > --- a/drivers/gpu/drm/panfrost/panfrost_gem.c > +++ b/drivers/gpu/drm/panfrost/panfrost_gem.c > @@ -208,6 +208,20 @@ static enum drm_gem_object_status panfrost_gem_status(struct drm_gem_object *obj > return res; > } > > +static size_t panfrost_gem_rss(struct drm_gem_object *obj) > +{ > + struct panfrost_gem_object *bo = to_panfrost_bo(obj); > + > + if (bo->is_heap) { > + return bo->heap_rss_size; > + } else if (bo->base.pages) { > + WARN_ON(bo->heap_rss_size); > + return bo->base.base.size; > + } else { > + return 0; > + }
I would do, instead...
...... if (bo->is_heap) { return bo->heap_rss_size; } else if (bo->base.pages) { WARN_ON(bo->heap_rss_size); return bo->base.base.size; }
return 0; }
Apart from that, Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
| |