linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ayan Halder <Ayan.Halder@arm.com>
To: Sumit Semwal <sumit.semwal@linaro.org>
Cc: nd <nd@arm.com>, Alistair Strachan <astrachan@google.com>,
	Vincent Donnefort <Vincent.Donnefort@arm.com>,
	Chenbo Feng <fengc@google.com>,
	lkml <linux-kernel@vger.kernel.org>,
	Liam Mark <lmark@codeaurora.org>, "Andrew F . Davis" <afd@ti.com>,
	Christoph Hellwig <hch@infradead.org>,
	DRI mailing list <dri-devel@lists.freedesktop.org>,
	Hridya Valsaraju <hridya@google.com>,
	Sudipto Paul <Sudipto.Paul@arm.com>,
	Pratik Patel <pratikp@codeaurora.org>
Subject: Re: [RESEND][PATCH v8 0/5] DMA-BUF Heaps (destaging ION)
Date: Wed, 9 Oct 2019 17:37:44 +0000	[thread overview]
Message-ID: <20191009173742.GA2682@arm.com> (raw)
In-Reply-To: <20190924162217.GA12974@arm.com>

On Tue, Sep 24, 2019 at 04:22:18PM +0000, Ayan Halder wrote:
> On Thu, Sep 19, 2019 at 10:21:52PM +0530, Sumit Semwal wrote:
> > Hello Christoph, everyone,
> > 
> > On Sat, 7 Sep 2019 at 00:17, John Stultz <john.stultz@linaro.org> wrote:
> > >
> > > Here is yet another pass at the dma-buf heaps patchset Andrew
> > > and I have been working on which tries to destage a fair chunk
> > > of ION functionality.
> > >
> > > The patchset implements per-heap devices which can be opened
> > > directly and then an ioctl is used to allocate a dmabuf from the
> > > heap.
> > >
> > > The interface is similar, but much simpler then IONs, only
> > > providing an ALLOC ioctl.
> > >
> > > Also, I've provided relatively simple system and cma heaps.
> > >
> > > I've booted and tested these patches with AOSP on the HiKey960
> > > using the kernel tree here:
> > >   https://git.linaro.org/people/john.stultz/android-dev.git/log/?h=dev/dma-buf-heap
> > >
> > > And the userspace changes here:
> > >   https://android-review.googlesource.com/c/device/linaro/hikey/+/909436
> > >
> > > Compared to ION, this patchset is missing the system-contig,
> > > carveout and chunk heaps, as I don't have a device that uses
> > > those, so I'm unable to do much useful validation there.
> > > Additionally we have no upstream users of chunk or carveout,
> > > and the system-contig has been deprecated in the common/andoid-*
> > > kernels, so this should be ok.
> > >
> > > I've also removed the stats accounting, since any such accounting
> > > should be implemented by dma-buf core or the heaps themselves.
> > >
> > > Most of the changes in this revision are adddressing the more
> > > concrete feedback from Christoph (many thanks!). Though I'm not
> > > sure if some of the less specific feedback was completely resolved
> > > in discussion last time around. Please let me know!
> > 
> > It looks like most of the feedback has been taken care of. If there's
> > no more objection to this series, I'd like to merge it in soon.
> > 
> > If there are any more review comments, may I request you to please provide them?
> 
> I tested these patches using our internal test suite with Arm,komeda
> driver and the following node in dts
> 
>         reserved-memory {
>                 #address-cells = <0x2>;
>                 #size-cells = <0x2>;
>                 ranges;
> 
>                 framebuffer@60000000 {
>                         compatible = "shared-dma-pool";
>                         linux,cma-default;
>                         reg = <0x0 0x60000000 0x0 0x8000000>;
>                 };
>         }
Apologies for the confusion, this dts node is irrelevant as our tests were using
the cma heap (via /dev/dma_heap/reserved).

That raises a question. How do we represent the reserved-memory nodes
(as shown above) via the dma-buf heaps framework ?
> 
> The tests went fine. Our tests allocates framebuffers of different
> sizes, posts them on screen and the driver writes back to one of the
> framebuffers. I havenot tested for any performance, latency or
> cache management related stuff. So, it that looks appropriate, feel
> free to add:-
> Tested-by:- Ayan Kumar Halder <ayan.halder@arm.com>
> 
> Are you planning to write some igt tests for it ?
> > 
> > >
> > > New in v8:
> > > * Make struct dma_heap_ops consts (Suggested by Christoph)
> > > * Add flush_kernel_vmap_range/invalidate_kernel_vmap_range calls
> > >   (suggested by Christoph)
> > > * Condense dma_heap_buffer and heap_helper_buffer (suggested by
> > >   Christoph)
> > > * Get rid of needless struct system_heap (suggested by Christoph)
> > > * Fix indentation by using shorter argument names (suggested by
> > >   Christoph)
> > > * Remove unused private_flags value
> > > * Add forgotten include file to fix build issue on x86
> > > * Checkpatch whitespace fixups
> > >
> > > Thoughts and feedback would be greatly appreciated!
> > >
> > > thanks
> > > -john
> > Best,
> > Sumit.
> > >
> > > Cc: Laura Abbott <labbott@redhat.com>
> > > Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org>
> > > Cc: Sumit Semwal <sumit.semwal@linaro.org>
> > > Cc: Liam Mark <lmark@codeaurora.org>
> > > Cc: Pratik Patel <pratikp@codeaurora.org>
> > > Cc: Brian Starkey <Brian.Starkey@arm.com>
> > > Cc: Vincent Donnefort <Vincent.Donnefort@arm.com>
> > > Cc: Sudipto Paul <Sudipto.Paul@arm.com>
> > > Cc: Andrew F. Davis <afd@ti.com>
> > > Cc: Christoph Hellwig <hch@infradead.org>
> > > Cc: Chenbo Feng <fengc@google.com>
> > > Cc: Alistair Strachan <astrachan@google.com>
> > > Cc: Hridya Valsaraju <hridya@google.com>
> > > Cc: dri-devel@lists.freedesktop.org
> > >
> > >
> > > Andrew F. Davis (1):
> > >   dma-buf: Add dma-buf heaps framework
> > >
> > > John Stultz (4):
> > >   dma-buf: heaps: Add heap helpers
> > >   dma-buf: heaps: Add system heap to dmabuf heaps
> > >   dma-buf: heaps: Add CMA heap to dmabuf heaps
> > >   kselftests: Add dma-heap test
> > >
> > >  MAINTAINERS                                   |  18 ++
> > >  drivers/dma-buf/Kconfig                       |  11 +
> > >  drivers/dma-buf/Makefile                      |   2 +
> > >  drivers/dma-buf/dma-heap.c                    | 250 ++++++++++++++++
> > >  drivers/dma-buf/heaps/Kconfig                 |  14 +
> > >  drivers/dma-buf/heaps/Makefile                |   4 +
> > >  drivers/dma-buf/heaps/cma_heap.c              | 164 +++++++++++
> > >  drivers/dma-buf/heaps/heap-helpers.c          | 269 ++++++++++++++++++
> > >  drivers/dma-buf/heaps/heap-helpers.h          |  55 ++++
> > >  drivers/dma-buf/heaps/system_heap.c           | 122 ++++++++
> > >  include/linux/dma-heap.h                      |  59 ++++
> > >  include/uapi/linux/dma-heap.h                 |  55 ++++
> > >  tools/testing/selftests/dmabuf-heaps/Makefile |   9 +
> > >  .../selftests/dmabuf-heaps/dmabuf-heap.c      | 230 +++++++++++++++
> > >  14 files changed, 1262 insertions(+)
> > >  create mode 100644 drivers/dma-buf/dma-heap.c
> > >  create mode 100644 drivers/dma-buf/heaps/Kconfig
> > >  create mode 100644 drivers/dma-buf/heaps/Makefile
> > >  create mode 100644 drivers/dma-buf/heaps/cma_heap.c
> > >  create mode 100644 drivers/dma-buf/heaps/heap-helpers.c
> > >  create mode 100644 drivers/dma-buf/heaps/heap-helpers.h
> > >  create mode 100644 drivers/dma-buf/heaps/system_heap.c
> > >  create mode 100644 include/linux/dma-heap.h
> > >  create mode 100644 include/uapi/linux/dma-heap.h
> > >  create mode 100644 tools/testing/selftests/dmabuf-heaps/Makefile
> > >  create mode 100644 tools/testing/selftests/dmabuf-heaps/dmabuf-heap.c
> > >
> > > --
> > > 2.17.1
> > >
> > 
> > 
> > -- 
> > Thanks and regards,
> > 
> > Sumit Semwal
> > Linaro Consumer Group - Kernel Team Lead
> > Linaro.org │ Open source software for ARM SoCs
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2019-10-09 17:38 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-06 18:47 [RESEND][PATCH v8 0/5] DMA-BUF Heaps (destaging ION) John Stultz
2019-09-06 18:47 ` [RESEND][PATCH v8 1/5] dma-buf: Add dma-buf heaps framework John Stultz
2019-09-23 22:08   ` Brian Starkey
2019-09-24 17:10     ` John Stultz
2019-09-06 18:47 ` [RESEND][PATCH v8 2/5] dma-buf: heaps: Add heap helpers John Stultz
2019-09-23 22:08   ` Brian Starkey
2019-09-06 18:47 ` [RESEND][PATCH v8 3/5] dma-buf: heaps: Add system heap to dmabuf heaps John Stultz
2019-09-23 22:09   ` Brian Starkey
2019-09-06 18:47 ` [RESEND][PATCH v8 4/5] dma-buf: heaps: Add CMA " John Stultz
2019-09-23 22:10   ` Brian Starkey
2019-09-06 18:47 ` [RESEND][PATCH v8 5/5] kselftests: Add dma-heap test John Stultz
2019-09-23 22:11   ` Brian Starkey
2019-09-26 21:36     ` John Stultz
2019-09-27  9:20       ` Brian Starkey
2019-09-19 16:51 ` [RESEND][PATCH v8 0/5] DMA-BUF Heaps (destaging ION) Sumit Semwal
2019-09-24 16:22   ` Ayan Halder
2019-09-24 16:28     ` John Stultz
2019-10-09 17:37     ` Ayan Halder [this message]
2019-10-09 18:27       ` Andrew F. Davis
2019-10-14  9:07         ` Brian Starkey
2019-10-16 17:40           ` Andrew F. Davis
2019-10-17 19:14             ` John Stultz
2019-10-17 19:29               ` Andrew F. Davis
2019-10-17 20:57                 ` John Stultz
2019-10-18  9:55                   ` Brian Starkey
2019-10-18 18:33                     ` John Stultz
2019-10-18 18:41                     ` Ayan Halder
2019-10-18 18:49                       ` John Stultz
2019-10-18 18:57                         ` Ayan Halder
2019-10-18 19:04                           ` John Stultz
2019-10-19 13:41                           ` Andrew F. Davis
2019-10-21  9:18                             ` Brian Starkey
2019-10-22 13:51                               ` Ayan Halder
2019-10-18 18:51                       ` Ayan Halder
2019-10-16 17:34       ` John Stultz
2019-09-30 13:40 ` Laura Abbott
     [not found] ` <20190930074335.6636-1-hdanton@sina.com>
2019-10-01 20:50   ` [RESEND][PATCH v8 3/5] dma-buf: heaps: Add system heap to dmabuf heaps John Stultz
     [not found] ` <20190930032651.8264-1-hdanton@sina.com>
2019-10-02 16:14   ` [RESEND][PATCH v8 1/5] dma-buf: Add dma-buf heaps framework John Stultz
     [not found] ` <20190930081434.248-1-hdanton@sina.com>
2019-10-02 16:15   ` [RESEND][PATCH v8 4/5] dma-buf: heaps: Add CMA heap to dmabuf heaps John Stultz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191009173742.GA2682@arm.com \
    --to=ayan.halder@arm.com \
    --cc=Sudipto.Paul@arm.com \
    --cc=Vincent.Donnefort@arm.com \
    --cc=afd@ti.com \
    --cc=astrachan@google.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=fengc@google.com \
    --cc=hch@infradead.org \
    --cc=hridya@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lmark@codeaurora.org \
    --cc=nd@arm.com \
    --cc=pratikp@codeaurora.org \
    --cc=sumit.semwal@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).