Re: [Freedreno] [PATCH v8 0/5] Add fdinfo support to Panfrost

2023-10-04 Thread Boris Brezillon
On Fri, 29 Sep 2023 19:14:26 +0100 Adrián Larumbe wrote: > This patch series adds fdinfo support to the Panfrost DRM driver. It will > display a series of key:value pairs under /proc/pid/fdinfo/fd for render > processes that open the Panfrost DRM file. > > The pairs contain basic drm gpu engine

Re: [Freedreno] [PATCH v5 5/6] drm/panfrost: Implement generic DRM object RSS reporting function

2023-09-18 Thread Boris Brezillon
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 > > Reviewed-by: Boris Brezillon > > Am I missing something, or are we missing a way of resetting > hea

Re: [Freedreno] [PATCH v5 6/6] drm/drm-file: Show finer-grained BO sizes in drm_show_memory_stats

2023-09-15 Thread Boris Brezillon
> > The new selection criteria try to preserve precision, whilst also > increasing the display unit selection threshold to render more accurate > values. > > Signed-off-by: Adrián Larumbe Reviewed-by: Boris Brezillon > --- > drivers/gpu/drm/drm_file.c | 5 - > 1 fi

Re: [Freedreno] [PATCH v4 6/6] drm/drm-file: Show finer-grained BO sizes in drm_show_memory_stats

2023-09-13 Thread Boris Brezillon
On Wed, 13 Sep 2023 09:46:45 -0700 Rob Clark wrote: > On Wed, Sep 13, 2023 at 12:36 AM Boris Brezillon > wrote: > > > > On Tue, 12 Sep 2023 19:14:35 -0700 > > Rob Clark wrote: > > > > > On Tue, Sep 12, 2023 at 6:46 PM Rob Clark wrote: > > >

Re: [Freedreno] [PATCH v4 6/6] drm/drm-file: Show finer-grained BO sizes in drm_show_memory_stats

2023-09-13 Thread Boris Brezillon
On Tue, 12 Sep 2023 19:14:35 -0700 Rob Clark wrote: > On Tue, Sep 12, 2023 at 6:46 PM Rob Clark wrote: > > > > On Tue, Sep 12, 2023 at 2:32 AM Boris Brezillon > > wrote: > > > > > > On Tue, 12 Sep 2023 09:37:00 +0100 > > > Adrián Larumbe w

Re: [Freedreno] [PATCH v4 6/6] drm/drm-file: Show finer-grained BO sizes in drm_show_memory_stats

2023-09-12 Thread Boris Brezillon
On Tue, 12 Sep 2023 09:37:00 +0100 Adrián Larumbe wrote: > The current implementation will try to pick the highest available size > display unit as soon as the BO size exceeds that of the previous > multiplier. That can lead to loss of precision in BO's whose size is > not a multiple of a MiB. >

Re: [Freedreno] [PATCH v4 5/6] drm/panfrost: Implement generic DRM object RSS reporting function

2023-09-12 Thread Boris Brezillon
s attached dmabuf structure. > > Signed-off-by: Adrián Larumbe Reviewed-by: Boris Brezillon > --- > 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 cha

Re: [Freedreno] [PATCH v4 3/6] drm/panfrost: Add fdinfo support for memory stats

2023-09-12 Thread Boris Brezillon
iver's shrinker mutex, but drm_show_memory_stats takes > over the drm file's object handle database spinlock, so there's potential > for a race condition here. > > Signed-off-by: Adrián Larumbe Reviewed-by: Boris Brezillon > --- > drivers/gpu/drm/panfrost/panfrost_drv.c |

Re: [Freedreno] [PATCH v4 2/6] drm/panfrost: Add fdinfo support GPU load metrics

2023-09-12 Thread Boris Brezillon
in > flight by the time cycle counting was disabled. > > The main goal of the debugfs cycle counter knob is letting tools like nvtop > or IGT's gputop switch it at any time, to avoid power waste in case no > engine usage measuring is necessary. > > Signed-off-by: Adrián Larumbe

Re: [Freedreno] [PATCH v3 8/8] drm/drm-file: Show finer-grained BO sizes in drm_show_memory_stats

2023-09-11 Thread Boris Brezillon
On Sat, 9 Sep 2023 17:55:17 +0100 Adrián Larumbe wrote: > On 06.09.2023 10:11, Boris Brezillon wrote: > >On Tue, 5 Sep 2023 19:45:24 +0100 > >Adrián Larumbe wrote: > > > >> The current implementation will try to pick the highest available size > >> disp

Re: [Freedreno] [PATCH v3 7/8] drm/panfrost: Implement generic DRM object RSS reporting function

2023-09-11 Thread Boris Brezillon
On Sat, 9 Sep 2023 17:42:02 +0100 Adrián Larumbe wrote: > On 06.09.2023 10:01, Boris Brezillon wrote: > >On Tue, 5 Sep 2023 19:45:23 +0100 > >Adrián Larumbe wrote: > > > >> BO's RSS is updated every time new pages are allocated on demand and mapped > >>

Re: [Freedreno] [PATCH v3 8/8] drm/drm-file: Show finer-grained BO sizes in drm_show_memory_stats

2023-09-06 Thread Boris Brezillon
On Tue, 5 Sep 2023 19:45:24 +0100 Adrián Larumbe wrote: > The current implementation will try to pick the highest available size > display unit as soon as the BO size exceeds that of the previous > multiplier. > > By selecting a higher threshold, we could show more accurate size numbers. > >

Re: [Freedreno] [PATCH v3 7/8] drm/panfrost: Implement generic DRM object RSS reporting function

2023-09-06 Thread Boris Brezillon
On Tue, 5 Sep 2023 19:45:23 +0100 Adrián Larumbe wrote: > 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

Re: [Freedreno] [PATCH v3 2/8] drm/panfrost: Enable cycle counter register upon job submission

2023-09-06 Thread Boris Brezillon
On Tue, 5 Sep 2023 19:45:18 +0100 Adrián Larumbe wrote: > diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c > b/drivers/gpu/drm/panfrost/panfrost_job.c > index 033f5e684707..8b1bf6ac48f8 100644 > --- a/drivers/gpu/drm/panfrost/panfrost_job.c > +++ b/drivers/gpu/drm/panfrost/panfrost_job.c >

Re: [Freedreno] [PATCH v3 4/8] drm/panfrost: Add fdinfo support GPU load metrics

2023-09-06 Thread Boris Brezillon
On Tue, 5 Sep 2023 19:45:20 +0100 Adrián Larumbe wrote: > The drm-stats fdinfo tags made available to user space are drm-engine, > drm-cycles, drm-max-freq and drm-curfreq, one per job slot. > > This deviates from standard practice in other DRM drivers, where a single > set of key:value pairs

Re: [Freedreno] [PATCH v3 3/8] drm/panfrost: Enable debugfs toggling of cycle counter register

2023-09-06 Thread Boris Brezillon
On Tue, 5 Sep 2023 19:45:19 +0100 Adrián Larumbe wrote: > Allow user space to decide whether the cycle counting register should be > enabled. The main goal is letting tools like nvtop or IGT's gputop access > this information in debug builds to obtain engine utilisation numbers. Given you add

Re: [Freedreno] [PATCH v3 2/8] drm/panfrost: Enable cycle counter register upon job submission

2023-09-06 Thread Boris Brezillon
On Tue, 5 Sep 2023 19:45:18 +0100 Adrián Larumbe wrote: > In a future development, we will want to keep track of the number of GPU > cycles spent on a given job. That means we should enable it only when the > GPU has work to do, and switch it off whenever it is idle to avoid power > waste. > >

Re: [Freedreno] [PATCH v2 5/6] drm/panfrost: Implement generic DRM object RSS reporting function

2023-09-01 Thread Boris Brezillon
On Fri, 1 Sep 2023 01:03:23 +0100 Adrián Larumbe wrote: > >> @@ -274,13 +286,23 @@ panfrost_gem_prime_import_sg_table(struct drm_device > >> *dev, > >> { > >>struct drm_gem_object *obj; > >>struct panfrost_gem_object *bo; > >> + struct scatterlist *sgl; > >> + unsigned int count; >

Re: [Freedreno] [PATCH v2 5/6] drm/panfrost: Implement generic DRM object RSS reporting function

2023-08-30 Thread Boris Brezillon
On Thu, 24 Aug 2023 02:34:48 +0100 Adrián Larumbe wrote: > BO's RSS is updated every time new pages are allocated and mapped for the > object, either in its entirety at creation time for non-heap buffers, or > else on demand for heap buffers at GPU page fault's IRQ handler. > > Same

Re: [Freedreno] [PATCH v2 1/6] drm/panfrost: Add cycle count GPU register definitions

2023-08-30 Thread Boris Brezillon
On Thu, 24 Aug 2023 02:34:44 +0100 Adrián Larumbe wrote: > These GPU registers will be used when programming the cycle counter, which > we need for providing accurate fdinfo drm-cycles values to user space. > > Signed-off-by: Adrián Larumbe Reviewed-by: Boris Brezillon > ---

Re: [Freedreno] [PATCH v2 4/6] drm/drm_file: Add DRM obj's RSS reporting function for fdinfo

2023-08-30 Thread Boris Brezillon
; > Signed-off-by: Adrián Larumbe Reviewed-by: Boris Brezillon > --- > drivers/gpu/drm/drm_file.c | 5 - > include/drm/drm_gem.h | 9 + > 2 files changed, 13 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/drm_file.c b/drivers/gpu/drm/drm_file.c

Re: [Freedreno] [PATCH v2 3/6] drm/panfrost: Add fdinfo support for memory stats

2023-08-30 Thread Boris Brezillon
On Thu, 24 Aug 2023 02:34:46 +0100 Adrián Larumbe wrote: > A new DRM GEM object function is added so that drm_show_memory_stats can > provider more accurate memory usage numbers. s/provider/provide/ > > Ideally, in panfrost_gem_status, the BO's purgeable flag would be checked > after

Re: [Freedreno] [PATCH v2 2/6] drm/panfrost: Add fdinfo support GPU load metrics

2023-08-30 Thread Boris Brezillon
On Thu, 24 Aug 2023 02:34:45 +0100 Adrián Larumbe wrote: > The drm-stats fdinfo tags made available to user space are drm-engine, > drm-cycles, drm-max-freq and drm-curfreq, one per job slot. Pretty sure this has already been discussed, but it's probably worth mentioning that drm-cycles is not

Re: [Freedreno] [RFC 1/2] drm: Add fdinfo memory stats

2023-04-11 Thread Boris Brezillon
Hi Rob, On Thu, 6 Apr 2023 14:59:16 -0700 Rob Clark wrote: > From: Rob Clark > > Add a helper to dump memory stats to fdinfo. For the things the drm > core isn't aware of, use a callback. > > Signed-off-by: Rob Clark > --- > Documentation/gpu/drm-usage-stats.rst | 21 +++ >

Re: [Freedreno] [PATCH] drm/msm: avoid double-attaching hdmi/edp bridges

2020-03-12 Thread Boris Brezillon
h HDMI on IFC6410 (APQ8064 / MDP4), but eDP case should be > > analogous. > > > > Fixes: 3ef2f119bd3ed (drm/msm: Use drm_attach_bridge() to attach a bridge > > to an encoder) > > Cc: Boris Brezillon > > Signed-off-by: Ilia Mirkin > > Thanks > &g

Re: [Freedreno] [PATCH v4 0/5] drm: Fix fb changes for async updates

2019-06-04 Thread Boris Brezillon
On Mon, 3 Jun 2019 13:56:05 -0300 Helen Koike wrote: > Hello, > > I'm re-sending this series with the acked by in the msm patch and > updating the docs in the last patch, the rest is the same. > > v3 link: https://patchwork.kernel.org/project/dri-devel/list/?series=91353 Series queued to

Re: [Freedreno] [PATCH v3 2/4] drm/atomic: rename async_{update, check} to amend_{update, check}

2019-04-12 Thread Boris Brezillon
On Fri, 12 Apr 2019 11:06:13 -0300 Helen Koike wrote: > Hi Boris, > > On 4/12/19 10:49 AM, Boris Brezillon wrote: > > Hi Helen, > > > > On Fri, 12 Apr 2019 09:58:25 -0300 > > Helen Koike wrote: > > > >> Asynchronous update is the abilit

Re: [Freedreno] [PATCH v2 5/5] drm: don't block fb changes for async plane updates

2019-03-12 Thread Boris Brezillon
newfb = fb1, prepare fb1, cleanup fb2 > > Where calls to prepare/cleanup are balanced. > > Cc: # v4.14+ > Fixes: 25dc194b34dd ("drm: Block fb changes for async plane updates") > Suggested-by: Boris Brezillon > Signed-off-by: Helen Koike Reviewed-by: B

Re: [Freedreno] [PATCH 2/2] drm/atomic: Create and use __drm_atomic_helper_crtc_reset() everywhere

2018-11-12 Thread Boris Brezillon
Liviu Dudau > Cc: Brian Starkey > Cc: Mali DP Maintainers > Cc: Boris Brezillon > Cc: Nicolas Ferre > Cc: Alexandre Belloni > Cc: Ludovic Desroches > Cc: Maarten Lankhorst > Cc: Maxime Ripard > Cc: Sean Paul > Cc: Jani Nikula > Cc: Joonas Lahtinen > C

Re: [Freedreno] [PATCH] drm/core: Remove drm_dev_unref() and it's uses

2018-04-26 Thread Boris Brezillon
| 4 ++-- > drivers/gpu/drm/arc/arcpgu_drv.c | 4 ++-- > drivers/gpu/drm/armada/armada_drv.c| 6 +++--- > drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 4 ++-- For atmel-hlcdc: Acked-by: Boris Brezillon <boris.brezil...@bootlin.com>

[Freedreno] [PATCH v2 01/20] drm/atomic: Fix remaining places where !funcs->best_encoder is valid

2016-06-07 Thread Boris Brezillon
gly. Signed-off-by: Boris Brezillon <boris.brezil...@free-electrons.com> --- drivers/gpu/drm/drm_atomic_helper.c | 4 +++- drivers/gpu/drm/drm_fb_helper.c | 13 - include/drm/drm_modeset_helper_vtables.h | 10 -- 3 files changed, 23 insertions(+), 4 deletions

[Freedreno] [PATCH v2 11/20] drm: sti: Rely on the default ->best_encoder() behavior

2016-06-07 Thread Boris Brezillon
All outputs have a 1:1 relationship between connectors and encoders and the driver is relying on the atomic helpers: we can drop the custom ->best_encoder() implementations and let the core call drm_atomic_helper_best_encoder() for us. Signed-off-by: Boris Brezillon <boris.brezil..

[Freedreno] [PATCH v2 08/20] drm: msm: Rely on the default ->best_encoder() behavior where appropriate

2016-06-07 Thread Boris Brezillon
For all outputs except DSI we have a 1:1 relationship between connectors and encoders and the driver is relying on the atomic helpers: we can drop the custom ->best_encoder() and let the core call drm_atomic_helper_best_encoder() for us. Signed-off-by: Boris Brezillon <boris.brezil..

[Freedreno] [PATCH v2 04/20] drm: exynos: Rely on the default ->best_encoder() behavior

2016-06-07 Thread Boris Brezillon
We have 1:1 relationship between connectors and encoders and the driver is relying on the atomic helpers: we can drop the custom ->best_encoder() implementations and let the core call drm_atomic_helper_best_encoder() for us. Signed-off-by: Boris Brezillon <boris.brezil...@free-electro

[Freedreno] [PATCH v2 03/20] drm: atmel-hlcdc: Rely on the default ->best_encoder() behavior

2016-06-07 Thread Boris Brezillon
We have a 1:1 relationship between connectors and encoders and the driver is relying on the atomic helpers: we can drop the custom ->best_encoder() and let the core call drm_atomic_helper_best_encoder() for us. Signed-off-by: Boris Brezillon <boris.brezil...@free-electrons.com> --- dr

[Freedreno] [PATCH v2 06/20] drm: i915: Rely on the default ->best_encoder() behavior where appropriate

2016-06-07 Thread Boris Brezillon
For all outputs except dp_mst, we have a 1:1 relationship between connectors and encoders and the driver is relying on the atomic helpers: we can drop the custom ->best_encoder() implementation and let the core call drm_atomic_helper_best_encoder() for us. Signed-off-by: Boris Brezil

Re: [Freedreno] [PATCH 01/20] drm/atomic: Fix remaining places where !funcs->best_encoder is valid

2016-06-03 Thread Boris Brezillon
On Thu, 2 Jun 2016 23:57:02 +0200 Daniel Vetter <dan...@ffwll.ch> wrote: > On Thu, Jun 2, 2016 at 11:05 PM, Laurent Pinchart > <laurent.pinch...@ideasonboard.com> wrote: > > Hi Boris, > > > > Thank you for the patch. > > > > On Thursday 02 Jun 2

[Freedreno] [PATCH 08/20] drm: msm: Rely on the default ->best_encoder() behavior where appropriate

2016-06-02 Thread Boris Brezillon
For all outputs except DSI we have a 1:1 relationship between connectors and encoders and the driver is relying on the atomic helpers: we can drop the custom ->best_encoder() and let the core call drm_atomic_helper_best_encoder() for us. Signed-off-by: Boris Brezillon <boris.brezil..

[Freedreno] [PATCH 03/20] drm: atmel-hlcdc: Rely on the default ->best_encoder() behavior

2016-06-02 Thread Boris Brezillon
We have a 1:1 relationship between connectors and encoders and the driver is relying on the atomic helpers: we can drop the custom ->best_encoder() and let the core call drm_atomic_helper_best_encoder() for us. Signed-off-by: Boris Brezillon <boris.brezil...@free-electrons.com> --- dr