lkml.org 
[lkml]   [2009]   [Aug]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [Patch 8/8] kexec: allow to shrink reserved memory
    On Tue, 18 Aug 2009 14:31:23 +0800
    Amerigo Wang <amwang@redhat.com> wrote:
    > Hi, thank you!
    > > Can I have a question ?
    > >
    > > - How crash kernel's memory is preserved at boot ?
    > >
    >
    > Use bootmem, I think.
    >
    I see.

    In x86,

    setup_arch()
    -> reserve_crashkernel()
    -> find_and_reserve_crashkernel()
    -> reserve_bootmem_generic()

    Then, all "active range" is already registered and there are memmap.


    > > It's hidden from the system before mem_init() ?
    > >
    >
    > Not sure, but probably yes. It is reserved in setup_arch() which is
    > before mm_init() which calls mem_init().
    >
    > Do you have any advice to free that reserved memory after boot? :)
    >

    Let's see arch/x86/mm/init.c::free_initmem()

    Maybe it's all you want.

    - ClearPageReserved()
    - init_page_count()
    - free_page()
    - totalram_pages++

    But it has no argumetns. Maybe you need your own function or modification.
    online_pages() does very similar. But, hmm,.. writing something open coded one
    for crashkernel is not very bad, I think.

    Thanks,
    -Kame









    \
     
     \ /
      Last update: 2009-08-18 10:31    [W:0.023 / U:61.816 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site