Re: [PATCH 4/4] drivers: dma-contiguous: add initialization from device tree

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

 




Hello,

On 2014-07-04 07:52, Joonsoo Kim wrote:
-----Original Message-----
From: Marek Szyprowski [mailto:m.szyprowski@xxxxxxxxxxx]
Sent: Wednesday, July 02, 2014 7:49 PM

Subject: [PATCH 4/4] drivers: dma-contiguous: add initialization from
device tree

Add a code to create CMA region from reserved memory and add support for
handling 'shared-dma-pool' reserved-memory device tree nodes.

Signed-off-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
---
  drivers/base/dma-contiguous.c | 67
+++++++++++++++++++++++++++++++++++++++++
  include/linux/cma.h           |  3 ++
  mm/cma.c                      | 69
++++++++++++++++++++++++++++++++-----------
  3 files changed, 122 insertions(+), 17 deletions(-)


...

+/**
   * cma_declare_contiguous() - reserve custom contiguous area
   * @base: Base address of the reserved area optional, use 0 for any
   * @size: Size of the reserved area (in bytes),
@@ -162,18 +210,12 @@ int __init cma_declare_contiguous(phys_addr_t base,
  			phys_addr_t alignment, unsigned int order_per_bit,
  			bool fixed, struct cma **res_cma)
  {
-	struct cma *cma;
-	int ret = 0;
+	int ret;

  	pr_debug("%s(size %lx, base %08lx, limit %08lx alignment %08lx)\n",
  		__func__, (unsigned long)size, (unsigned long)base,
  		(unsigned long)limit, (unsigned long)alignment);

-	if (cma_area_count == ARRAY_SIZE(cma_areas)) {
-		pr_err("Not enough slots for CMA reserved regions!\n");
-		return -ENOSPC;
-	}
-
Hello, Marek.

After this change, if we have not enough cma_areas, memory will leak.
I think that we need separate function to check constraint and this
function should be called before reserving memory in
cma_declare_contiguous().

Well, I will leave this check to avoid memory leak then.

BTW, this mail doesn't appear in LKML. What happens? :)

I have no idea, I will send second version then.

Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux