Re: [PATCH v2 2/3] CMA: aggressively allocate the pages on cma reserved memory when not used

From: Gioh Kim
Date: Mon Jun 02 2014 - 03:13:37 EST


I'm not sure what I'm doing wrong.
These are my code.

770 #ifdef CONFIG_CMA
771 void adjust_managed_cma_page_count(struct zone *zone, long count)
772 {
773 unsigned long flags;
774 long total, cma, movable;
775
776 spin_lock_irqsave(&zone->lock, flags);
777
778 zone->managed_cma_pages += count;
779
780 total = zone->managed_pages;
781 cma = zone->managed_cma_pages;
782 movable = total - cma - high_wmark_pages(zone);
783
784 printk("count=%ld total=%ld cma=%ld movable=%ld\n",
785 count, total, cma, movable);
786


2014-06-02 ìí 3:23, Joonsoo Kim ì ê:
On Mon, Jun 02, 2014 at 02:54:30PM +0900, Gioh Kim wrote:
I found 2 problems at my platform.

1st is occured when I set CMA size 528MB and total memory is 960MB.
I print some values in adjust_managed_cma_page_count(),
the total value becomes 105439 and cma value 131072.
Finally movable value becomes negative value.

The total value 105439 means 411MB.
Is the zone->managed_pages value pages amount except the CMA?
I think zone->managed_pages value is including CMA size but it's value is strange.

Hmm...
zone->managed_pages includes nr of CMA pages.
Is there any mistake about your printk?


2nd is a kernel panic at __netdev_alloc_skb().
I'm not sure it is caused by the CMA.
I'm checking it again and going to send you another report with detail call-stacks.

Okay.

Thanks.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/