On Mon, Feb 8, 2021 at 2:08 AM Daniel Vetter <dan...@ffwll.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 <dan...@ffwll.ch> > > Cc: Sumit Semwal <sumit.sem...@linaro.org> > > Cc: Liam Mark <lm...@codeaurora.org> > > Cc: Chris Goldsworthy <cgold...@codeaurora.org> > > Cc: Laura Abbott <labb...@kernel.org> > > Cc: Brian Starkey <brian.star...@arm.com> > > Cc: Hridya Valsaraju <hri...@google.com> > > Cc: Suren Baghdasaryan <sur...@google.com> > > Cc: Sandeep Patil <sspa...@google.com> > > Cc: Daniel Mentz <danielme...@google.com> > > Cc: Ørjan Eide <orjan.e...@arm.com> > > Cc: Robin Murphy <robin.mur...@arm.com> > > Cc: Ezequiel Garcia <ezequ...@collabora.com> > > Cc: Simon Ser <cont...@emersion.fr> > > Cc: James Jones <jajo...@nvidia.com> > > Cc: linux-me...@vger.kernel.org > > Cc: dri-de...@lists.freedesktop.org > > Signed-off-by: John Stultz <john.stu...@linaro.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? 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. thanks -john