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: John Stultz <john.stultz@linaro.org>,
	Sudipto Paul <Sudipto.Paul@arm.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>,
	Alistair Strachan <astrachan@google.com>,
	DRI mailing list <dri-devel@lists.freedesktop.org>,
	Hridya Valsaraju <hridya@google.com>,
	Pratik Patel <pratikp@codeaurora.org>, nd <nd@arm.com>
Subject: Re: [RESEND][PATCH v8 0/5] DMA-BUF Heaps (destaging ION)
Date: Tue, 24 Sep 2019 16:22:18 +0000	[thread overview]
Message-ID: <20190924162217.GA12974@arm.com> (raw)
In-Reply-To: <CAO_48GFHx4uK6cWwJ4oGdJ8HNZNZYDzdD=yR3VK0EXQ86ya9-g@mail.gmail.com>

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>;
                };
        }

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

  reply	other threads:[~2019-09-24 16:22 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 [this message]
2019-09-24 16:28     ` John Stultz
2019-10-09 17:37     ` Ayan Halder
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=20190924162217.GA12974@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=john.stultz@linaro.org \
    --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).