lkml.org 
[lkml]   [2011]   [Feb]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/4] printk: Allocate kernel log buffer earlier


    Ingo Molnar wrote:
    > * Mike Travis <travis@sgi.com> wrote:
    >
    >> On larger systems, because of the numerous ACPI, Bootmem and EFI
    >> messages, the static log buffer overflows before the larger one
    >> specified by the log_buf_len param is allocated. Minimize the
    >> potential for overflow by allocating the new log buffer as soon
    >> as possible.
    >>
    >> We do this by changing the log_buf_len from an early_param to a
    >> _setup param. But _setup params are processed before the
    >> alloc_bootmem is available, so this function will now just save
    >> the requested log buf len. The real work routine (setup_log_buf)
    >> is called after bootmem is available.
    >>
    >> Signed-off-by: Mike Travis <travis@sgi.com>
    >> Reviewed-by: Jack Steiner <steiner@sgi.com>
    >> Reviewed-by: Robin Holt <holt@sgi.com>
    >> ---
    >> arch/x86/kernel/setup.c | 5 +++
    >> include/linux/printk.h | 4 ++
    >> init/main.c | 1
    >> kernel/printk.c | 75 ++++++++++++++++++++++++++++--------------------
    >> 4 files changed, 54 insertions(+), 31 deletions(-)
    >
    > Well, the modern allocation method is memblock - available on all major
    > architectures.
    >
    > You could avoid all this ugly workaround of bootmem limitations by moving the
    > allocation to memblock_alloc() and desupporting the log_buf_len= boot parameter
    > on non-memblock architectures.

    Is it really that ugly? I thought in some ways it cleaned it up.

    I'm also hesitant to change code for other arch's when I can't test them. This
    approach seemed to be the safest.

    > kernel log buffer size can be configured via the .config so they will not be left
    > without larger buffers.

    We have asked about this, but distros are reluctant to increase memory usage
    for their entire installed base. I think we're lucky they bumped it up to 256k
    from the default 128k.

    >
    > Doing this should also have the advantage of getting all the early x86 messages into
    > the larger buffer already, reducing the pressure to apply some of the other patches
    > in your series.

    There are only two and both remove only redundant information.

    >
    > Thanks,
    >
    > Ingo


    \
     
     \ /
      Last update: 2011-02-28 20:17    [W:0.025 / U:0.524 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site