Re: [PATCH v13 0/5] DMA-BUF Heaps (destaging ION)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/22/19 3:21 AM, Neil Armstrong wrote:
> Hi John,
> 
> On 21/10/2019 21:03, John Stultz wrote:
>> Lucky number 13! :)
>>
>> Last week in v12 I had re-added some symbol exports to support
>> later patches I have pending to enable loading heaps from
>> modules. He reminded me that back around v3 (its been awhile!) I
>> had removed those exports due to concerns about the fact that we
>> don't support module removal.
>>
>> So I'm respinning the patches, removing the exports again. I'll
>> submit a patch to re-add them in a later series enabling moduels
>> which can be reviewed indepently.
>>
>> With that done, lets get on to the boilerplate!
>>
>> 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
> 
> Do you have a 4.19 tree with the changes ? I tried but the xarray idr replacement
> is missing... so I can't test with our android-amlogic-bmeson-4.19 tree.
> 


Just a note, we switched to xarray around v4 time frame of this series,
so you may be able to find the IDR based code and plug it in for a 4.19
port.

Andrew


> If you can provide, I'll be happy to test the serie and the gralloc changes.
> 
> Neil
> 
>>
>> 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.
>>
>> New in v13:
>> * Re-remove symbol exports, per discussion with Brian. I'll
>>   resubmit these separately in a later patch so they can be
>>   independently reviewed
>>
>> thanks
>> -john
>>
>> Cc: Laura Abbott <labbott@xxxxxxxxxx>
>> Cc: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxx>
>> Cc: Sumit Semwal <sumit.semwal@xxxxxxxxxx>
>> Cc: Liam Mark <lmark@xxxxxxxxxxxxxx>
>> Cc: Pratik Patel <pratikp@xxxxxxxxxxxxxx>
>> Cc: Brian Starkey <Brian.Starkey@xxxxxxx>
>> Cc: Vincent Donnefort <Vincent.Donnefort@xxxxxxx>
>> Cc: Sudipto Paul <Sudipto.Paul@xxxxxxx>
>> Cc: Andrew F. Davis <afd@xxxxxx>
>> Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
>> Cc: Chenbo Feng <fengc@xxxxxxxxxx>
>> Cc: Alistair Strachan <astrachan@xxxxxxxxxx>
>> Cc: Hridya Valsaraju <hridya@xxxxxxxxxx>
>> Cc: Hillf Danton <hdanton@xxxxxxxx>
>> Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
>>
>>
>>
>> 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                    | 269 ++++++++++++++++++
>>  drivers/dma-buf/heaps/Kconfig                 |  14 +
>>  drivers/dma-buf/heaps/Makefile                |   4 +
>>  drivers/dma-buf/heaps/cma_heap.c              | 178 ++++++++++++
>>  drivers/dma-buf/heaps/heap-helpers.c          | 268 +++++++++++++++++
>>  drivers/dma-buf/heaps/heap-helpers.h          |  55 ++++
>>  drivers/dma-buf/heaps/system_heap.c           | 124 ++++++++
>>  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      | 238 ++++++++++++++++
>>  14 files changed, 1304 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
>>
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
> 
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux