All of lore.kernel.org
 help / color / mirror / Atom feed
From: Phillip Susi <psusi@ubuntu.com>
To: linux-mm@kvack.org
Subject: Accounting for missing ( bootmem? ) memory
Date: Thu, 03 May 2012 11:03:37 -0400	[thread overview]
Message-ID: <4FA29E49.8050801@ubuntu.com> (raw)

I've been trying to track down why free always seems to report a little 
less total ram than it should, compared to the total usable areas in the 
e820 memory map.  I have been reading mm/bootmem.c and it seems that the 
low memory zone is managed by this allocator prior to mm_init(), and 
then free_all_bootmem() is called, which releases all free bootmem pages 
to mm to handle, and adds that space to totalram_pages.  That means that 
any bootmem that is still allocated is lost from the totalram_pages count.

I'm trying to figure out what is consuming this bootmem.  Based on 
comments in bootmem.c, the memory is initially marked as allocated, and 
setup_arch() has to explicitly free any that isn't reserved, presumably 
for things like the kernel itself, and the initrd, and any reserved 
areas in the e820 map, but I can not find where this is done.

So my questions are:

1)  Where is the bootmem initially freed ( so I can see what sections 
are *not* initially freed )

2)  Why is all of the bootmem not reserved in the e820 map not 
eventually freed and turned over to mm to manage?

3)  How can I see what is allocating and never freeing bootmem?

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

                 reply	other threads:[~2012-05-03 15:03 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=4FA29E49.8050801@ubuntu.com \
    --to=psusi@ubuntu.com \
    --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.