[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKMK7uECMOO5jx4433uDuMq=MBaBEYaLe6ysrT_pshrr6Bf9dA@mail.gmail.com>
Date: Mon, 8 Feb 2021 22:05:58 +0100
From: Daniel Vetter <daniel@...ll.ch>
To: John Stultz <john.stultz@...aro.org>
Cc: lkml <linux-kernel@...r.kernel.org>,
Sumit Semwal <sumit.semwal@...aro.org>,
Liam Mark <lmark@...eaurora.org>,
Chris Goldsworthy <cgoldswo@...eaurora.org>,
Laura Abbott <labbott@...nel.org>,
Brian Starkey <Brian.Starkey@....com>,
Hridya Valsaraju <hridya@...gle.com>,
Suren Baghdasaryan <surenb@...gle.com>,
Sandeep Patil <sspatil@...gle.com>,
Daniel Mentz <danielmentz@...gle.com>,
Ørjan Eide <orjan.eide@....com>,
Robin Murphy <robin.murphy@....com>,
Ezequiel Garcia <ezequiel@...labora.com>,
Simon Ser <contact@...rsion.fr>,
James Jones <jajones@...dia.com>,
linux-media <linux-media@...r.kernel.org>,
dri-devel <dri-devel@...ts.freedesktop.org>
Subject: Re: [RFC][PATCH 2/2] dma-buf: heaps: Fix the name used when exporting
dmabufs to be the actual heap name
On Mon, Feb 8, 2021 at 9:51 PM John Stultz <john.stultz@...aro.org> wrote:
> On Mon, Feb 8, 2021 at 2:08 AM Daniel Vetter <daniel@...ll.ch> wrote:
> > On Sat, Feb 06, 2021 at 05:47:48AM +0000, John Stultz wrote:
> > > By default dma_buf_export() sets the exporter name to be
> > > KBUILD_MODNAME. Unfortunately this may not be identical to the
> > > string used as the heap name (ie: "system" vs "system_heap").
> > >
> > > This can cause some minor confusion with tooling, and there is
> > > the future potential where multiple heap types may be exported
> > > by the same module (but would all have the same name).
> > >
> > > So to avoid all this, set the exporter exp_name to the heap name.
> > >
> > > Cc: Daniel Vetter <daniel@...ll.ch>
> > > Cc: Sumit Semwal <sumit.semwal@...aro.org>
> > > Cc: Liam Mark <lmark@...eaurora.org>
> > > Cc: Chris Goldsworthy <cgoldswo@...eaurora.org>
> > > Cc: Laura Abbott <labbott@...nel.org>
> > > Cc: Brian Starkey <Brian.Starkey@....com>
> > > Cc: Hridya Valsaraju <hridya@...gle.com>
> > > Cc: Suren Baghdasaryan <surenb@...gle.com>
> > > Cc: Sandeep Patil <sspatil@...gle.com>
> > > Cc: Daniel Mentz <danielmentz@...gle.com>
> > > Cc: Ørjan Eide <orjan.eide@....com>
> > > Cc: Robin Murphy <robin.murphy@....com>
> > > Cc: Ezequiel Garcia <ezequiel@...labora.com>
> > > Cc: Simon Ser <contact@...rsion.fr>
> > > Cc: James Jones <jajones@...dia.com>
> > > Cc: linux-media@...r.kernel.org
> > > Cc: dri-devel@...ts.freedesktop.org
> > > Signed-off-by: John Stultz <john.stultz@...aro.org>
> >
> > Looks reasonable to me.
> >
> > I guess the main worry is "does this mean heap names become uapi", in
> > which case I'm maybe not so sure anymore how this will tie into the
> > overall gpu memory accounting story.
> >
> > Since for dma-buf heaps one name per buffer is perfectly fine, since
> > dma-buf heaps aren't very dynamic. But on discrete gpu drivers buffers
> > move, so baking in the assumption that "exporter name = resource usage for
> > this buffer" is broken.
>
> I suspect I'm missing a subtlety in what you're describing. My sense
> of the exporter name doesn't account for a buffer's usage, it just
> describes what code allocated it and implicitly which dmabuf_ops
> handles it. Maybe could you give a more specific example of what
> you're hoping to avoid?
Just paranoia really - on the linux side where we allocate most
buffers (even shared ones) with the driver, that allocator info isn't
that meaningful, it really just tells you which code
allocated/exported that dma-buf.
But on Android, where all shared buffers come from specific heaps, it
is rather meaningful information. So I wondered whether e.g. the
android dmabuf debug tool uses that to collect per-heap stats, but
sounds like no right now. Plus with the chat we've had I think we have
a long-term plan for how to expose that information properly.
> To me this patch is mostly just a consistency/least-surprise thing, so
> the heaps exporter name matches the string used for the heap's chardev
> device (the interface used to allocate it) in output like
> debugfs/dma_buf/bufinfo.
Yeah for debug this makes sense. a-b: me if you want that somewhere on
the patches.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
Powered by blists - more mailing lists