From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755173AbbCCJRN (ORCPT ); Tue, 3 Mar 2015 04:17:13 -0500 Received: from e28smtp02.in.ibm.com ([122.248.162.2]:44606 "EHLO e28smtp02.in.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751655AbbCCJRJ (ORCPT ); Tue, 3 Mar 2015 04:17:09 -0500 From: "Aneesh Kumar K.V" To: Stefan Strogin , linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: Stefan Strogin , Joonsoo Kim , Andrew Morton , Marek Szyprowski , Michal Nazarewicz , Laurent Pinchart , Dmitry Safonov , Pintu Kumar , Weijie Yang , Laura Abbott , SeongJae Park , Hui Zhu , Minchan Kim , Dyasly Sergey , Vyacheslav Tyrtov , Aleksei Mateosian , gregory.0xf0@gmail.com, sasha.levin@oracle.com, gioh.kim@lge.com, pavel@ucw.cz, stefan.strogin@gmail.com Subject: Re: [PATCH v3 3/4] mm: cma: add list of currently allocated CMA buffers to debugfs In-Reply-To: <1fe64ae6f12eeda1c2aa59daea7f89e57e0e35a9.1424802755.git.s.strogin@partner.samsung.com> References: <1fe64ae6f12eeda1c2aa59daea7f89e57e0e35a9.1424802755.git.s.strogin@partner.samsung.com> User-Agent: Notmuch/0.19+30~gd241a48 (http://notmuchmail.org) Emacs/24.3.1 (x86_64-pc-linux-gnu) Date: Tue, 03 Mar 2015 14:46:44 +0530 Message-ID: <87pp8qa1ab.fsf@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15030309-0005-0000-0000-00000411D7C0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Stefan Strogin writes: > When CONFIG_CMA_BUFFER_LIST is configured a file is added to debugfs: > /sys/kernel/debug/cma/cma-/buffers contains a list of currently allocated > CMA buffers for each CMA region (N stands for number of CMA region). > > Format is: > - ( kB), allocated by () > > When CONFIG_CMA_ALLOC_STACKTRACE is configured then stack traces are saved when > the allocations are made. The stack traces are added to cma/cma-/buffers > for each buffer list entry. > > Example: > > root@debian:/sys/kernel/debug/cma# cat cma-0/buffers > 0x2f400000 - 0x2f417000 (92 kB), allocated by pid 1 (swapper/0) > [] cma_alloc+0x1bb/0x200 > [] dma_alloc_from_contiguous+0x3a/0x40 > [] dma_generic_alloc_coherent+0x89/0x160 > [] dmam_alloc_coherent+0xbe/0x100 > [] ahci_port_start+0xe2/0x210 > [] ata_host_start.part.28+0xc0/0x1a0 > [] ata_host_activate+0xd0/0x110 > [] ahci_host_activate+0x3f/0x170 > [] ahci_init_one+0x764/0xab0 > [] pci_device_probe+0x6f/0xd0 > [] driver_probe_device+0x68/0x210 > [] __driver_attach+0x79/0x80 > [] bus_for_each_dev+0x4f/0x80 > [] driver_attach+0x1e/0x20 > [] bus_add_driver+0x157/0x200 > [] driver_register+0x5d/0xf0 > <...> A perf record -g will also give this information right ? To use this feature, one need to recompile the kernel anyway. So why not assume that user can always rerun the test with perf record -g and find the cma allocation point stack trace ? -aneesh