From: David Hildenbrand <david@redhat.com>
To: Faiyaz Mohammed <faiyazm@codeaurora.org>,
akpm@linux-foundation.org, linux-mm@kvack.org,
linux-kernel@vger.kernel.org
Cc: guptap@codeaurora.org
Subject: Re: [PATCH v1] mm: page_alloc: Add debug log in free_reserved_area for static memory
Date: Wed, 29 Sep 2021 19:03:50 +0200 [thread overview]
Message-ID: <d5a2e107-70e2-30b5-6723-9eea6650517a@redhat.com> (raw)
In-Reply-To: <1f6708d2-1ca8-6d1f-d9f0-855f2df755ed@codeaurora.org>
On 29.09.21 10:58, Faiyaz Mohammed wrote:
>
>
> On 9/28/2021 4:46 PM, David Hildenbrand wrote:
>> On 28.09.21 12:53, Faiyaz Mohammed wrote:
>>>
>>>
>>> On 9/28/2021 4:09 PM, David Hildenbrand wrote:
>>>> On 28.09.21 11:04, Faiyaz Mohammed wrote:
>>>>> For INITRD and initmem memory is reserved through "memblock_reserve"
>>>>> during boot up but it is free via "free_reserved_area" instead
>>>>> of "memblock_free".
>>>>> For example:
>>>>> [ 0.294848] Freeing initrd memory: 12K.
>>>>> [ 0.696688] Freeing unused kernel memory: 4096K.
>>>>>
>>>>> To get the start and end address of the above freed memory and to
>>>>> account
>>>>> proper memblock added memblock_dbg log in "free_reserved_area".
>>>>> After adding log:
>>>>> [ 0.294837] memblock_free: [0x00000083600000-0x00000083603000]
>>>>> free_initrd_mem+0x20/0x28
>>>>> [ 0.294848] Freeing initrd memory: 12K.
>>>>> [ 0.695246] memblock_free: [0x00000081600000-0x00000081a00000]
>>>>> free_initmem+0x70/0xc8
>>>>> [ 0.696688] Freeing unused kernel memory: 4096K.
>>>>>
>>>>> Signed-off-by: Faiyaz Mohammed <faiyazm@codeaurora.org>
>>>>> ---
>>>>> mm/page_alloc.c | 5 +++++
>>>>> 1 file changed, 5 insertions(+)
>>>>>
>>>>> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
>>>>> index b37435c..f85c3b2 100644
>>>>> --- a/mm/page_alloc.c
>>>>> +++ b/mm/page_alloc.c
>>>>> @@ -8129,6 +8129,11 @@ unsigned long free_reserved_area(void *start,
>>>>> void *end, int poison, const char
>>>>> pr_info("Freeing %s memory: %ldK\n",
>>>>> s, pages << (PAGE_SHIFT - 10));
>>>>> +#ifdef CONFIG_HAVE_MEMBLOCK
>>>>> + memblock_dbg("memblock_free: [%#016llx-%#016llx] %pS\n",
>>>>> + __pa(start), __pa(end), (void *)_RET_IP_);
>>>>> +#endif
>>>>
>>>> IMHO, the "memblock_free" part is misleading. Something was allocated
>>>> early via memblock, then we transitioned to the buddy, now we're freeing
>>>> that early allocation via the buddy.
>>>> Yes, we're freeing the early allocation via buddy, but for proper
>>> memblock accounting we need this debug print.
>>>
>>
>> What do you mean with "accounting" ? These are debug statements.
>>
>>
> Yes, these are debug statements, which help to know the a-b address
> belongs to x callsite. This info is required when memblock=debug is
> passed through command line and CONFIG_HAVE_MEMBLOCK is enabled.
The issue I'm having is talking in the name of memblock "memblock_dbg,
memblock_free", when memblock might no longer be around. We have other
places where we free early memblock allocations back to the buddy.
--
Thanks,
David / dhildenb
next prev parent reply other threads:[~2021-09-29 17:03 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-28 9:04 [PATCH v1] mm: page_alloc: Add debug log in free_reserved_area for static memory Faiyaz Mohammed
2021-09-28 10:39 ` David Hildenbrand
2021-09-28 10:53 ` Faiyaz Mohammed
2021-09-28 11:16 ` David Hildenbrand
2021-09-29 8:58 ` Faiyaz Mohammed
2021-09-29 17:03 ` David Hildenbrand [this message]
2021-10-06 12:13 ` Faiyaz Mohammed
2021-10-06 12:18 ` David Hildenbrand
2021-10-06 14:22 ` Faiyaz Mohammed
2021-10-11 6:49 ` Faiyaz Mohammed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d5a2e107-70e2-30b5-6723-9eea6650517a@redhat.com \
--to=david@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=faiyazm@codeaurora.org \
--cc=guptap@codeaurora.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.