|
|
Subscribe / Log in / New account

Chunk Heap Support on DMA-HEAP

From:  Minchan Kim <minchan-AT-kernel.org>
To:  Andrew Morton <akpm-AT-linux-foundation.org>
Subject:  [PATCH v2 0/4] Chunk Heap Support on DMA-HEAP
Date:  Tue, 01 Dec 2020 09:51:40 -0800
Message-ID:  <20201201175144.3996569-1-minchan@kernel.org>
Cc:  LKML <linux-kernel-AT-vger.kernel.org>, linux-mm <linux-mm-AT-kvack.org>, hyesoo.yu-AT-samsung.com, willy-AT-infradead.org, david-AT-redhat.com, iamjoonsoo.kim-AT-lge.com, vbabka-AT-suse.cz, surenb-AT-google.com, pullip.cho-AT-samsung.com, joaodias-AT-google.com, hridya-AT-google.com, sumit.semwal-AT-linaro.org, john.stultz-AT-linaro.org, Brian.Starkey-AT-arm.com, linux-media-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, robh-AT-kernel.org, christian.koenig-AT-amd.com, linaro-mm-sig-AT-lists.linaro.org, Minchan Kim <minchan-AT-kernel.org>
Archive-link:  Article

This patchset introduces a new dma heap, chunk heap that makes it
easy to perform the bulk allocation of high order pages.
It has been created to help optimize the 4K/8K HDR video playback
with secure DRM HW to protect contents on memory. The HW needs
physically contiguous memory chunks up to several hundred MB memory.

This patchset is against on next-20201130.

The patchset includes the following:
 - cma_alloc_bulk API
 - export dma-heap API to register kernel module dma heap.
 - add chunk heap implementation.

* Since v1 - 
  https://lore.kernel.org/linux-mm/20201117181935.3613581-1...

  * introduce alloc_contig_mode - David
  * use default CMA instead of device tree - John
    
Hyesoo Yu (2):
  dma-buf: add export symbol for dma-heap
  dma-buf: heaps: add chunk heap to dmabuf heaps

Minchan Kim (2):
  mm: introduce alloc_contig_mode
  mm: introduce cma_alloc_bulk API

 drivers/dma-buf/dma-heap.c         |   2 +
 drivers/dma-buf/heaps/Kconfig      |  15 +
 drivers/dma-buf/heaps/Makefile     |   1 +
 drivers/dma-buf/heaps/chunk_heap.c | 429 +++++++++++++++++++++++++++++
 drivers/virtio/virtio_mem.c        |   2 +-
 include/linux/cma.h                |   5 +
 include/linux/gfp.h                |  10 +-
 kernel/dma/contiguous.c            |   1 +
 mm/cma.c                           | 134 ++++++++-
 mm/page_alloc.c                    |  25 +-
 10 files changed, 607 insertions(+), 17 deletions(-)
 create mode 100644 drivers/dma-buf/heaps/chunk_heap.c

-- 
2.29.2.454.gaff20da3a2-goog



Copyright © 2020, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds