Re: [Fastboot] Re: [PATCH] Fix for broken kexec on panic

From: Eric W. Biederman (ebiederm_at_xmission.com)
Date: 02/24/05

  • Next message: Eric W. Biederman: "Re: [Fastboot] Re: [PATCH] Fix for broken kexec on panic"
    To: Andrew Morton <akpm@osdl.org>
    Date:	24 Feb 2005 05:48:16 -0700
    
    

    Andrew Morton <akpm@osdl.org> writes:

    > Vivek Goyal <vgoyal@in.ibm.com> wrote:
    > >
    > > Kexec on panic is broken on i386 in 2.6.11-rc3-mm2 because of
    > > re-organization of boot memory allocator initialization code.
    >
    > OK...
    >
    > Where are we up to with these patches, btw?

    Currently we are in the middle of a reorganization that places
    more of the work in user space, making the solution more robust.

    > Do you consider them close-to-complete?

    If you consider complete working code yes.
    Design wise I believe we are complete except proving out
    the pieces.

    Off the top of my head the current todo looks like:
    - kexec on panic user space preparation
      Basically generating ELF headers of a CORE dump before
      we crash.

    - Moving ioapic setup on x86 and x86_64 into init_IRQs, where it
      belongs. Currently when using IOAPICs we use them for everything
      except calibrating the delay loop. Where we assume the legacy
      interrupt controller is setup. When initiating kexec from
      panic() we don't do a clean shutdown so that is not the case
      and SMP is broken.

    Once those two pieces are in place and tested we should
    be able to drop all of the crashdump-* patches. As well
    as the crash_shutdown patches that touch the apics.

    Of course there will still be lots of pieces left to make the drivers
    more robust, and to make things easier to use. But all of those
    are evolutionary improvements, not core architecture things.

    > Do you have a feel for what proportion of machines will
    > work correctly?

    Yes.

    For the non panic case I need to get ioapic virtual wire
    setup working on ACPI systems. And I need to fix the ACPI
    using interrupts on the shutdown path bug.

    Most device drivers work without being touched.

    So we should work fine on x86 and x86_64 systems
    using either the legacy interrupt controller or IOAPICs.

    So it should be most of x86 and x86_64 systems, working
    with no more effort than I have described. And as device
    drivers are fixed even more systems.

    In addition there is nothing non-portable about the architecture,
    although avoiding firmware calls on non-embedded ports can be a very
    challenging modification to the boot process. So we should
    be able to start picking up most machines on other architectures like
    ppc, ppc64 and ia64 as soon the ports are complete.

    From a user perspective things are going to be rough for a while
    as things all the final kinks get worked out. But things will
    be largely usable and we should be able to get usable
    bug reports. Of course that is the level where we start seeing
    a whole new class of bug reports :)

    The biggest theoretical gotcha are systems with hot plug memory.
    As we are memorizing the memory map and storing it in a safe
    along with the recovery kernel before a crash occurs.

    Basically we are in pretty good shape except for systems
    like an SGI-Altix or an IBM-s390. Hot-plug memory, multi-terabyte
    core dump sizes, and weird SMP architectures are problems that
    we don't/won't cope with well. With only hotplug memory requiring a
    modification of responsibilities to handle.

    Eric
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/


  • Next message: Eric W. Biederman: "Re: [Fastboot] Re: [PATCH] Fix for broken kexec on panic"

    Relevant Pages

    • Re: [PATCH] 8/8 Create MMU 2/3 level accessors in the sub-arch layer (i386)
      ... reliability and maintinability of the i386 architecture. ... Yup, with one or two semi-exceptions, all the patches up to this series ... > There is a simple explanation for all of this series. ... > under different privilege levels, ...
      (Linux-Kernel)
    • -mm -> 2.6.13 merge status
      ... This summarises my current thinking on various patches which are presently ... sensible to make the reference architecture support hotplug. ... RCUification of the key management code ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • [PATCH 0/36] drivers edac new features drivers and fixes
      ... This series of patches enhances the feature set of EDAC, ... adds some new memory drivers. ... 2- Altered the file 'edac_mc.c' to be for memory controller code only. ...
      (Linux-Kernel)
    • Re: [Lhms-devel] [PATCH 0/7] Fragmentation Avoidance V19 - Summary
      ... Another reason for avoiding memory fragmentation, ... > that, with more work built upon these patches, we can grant large pages ... > the easy reclaim zone, alloc your pages and away we go". ... >> there aren't actually a lot of higher order allocations in the kernel. ...
      (Linux-Kernel)
    • [RFC][PATCH][0/4] Memory controller (RSS Control) (v2)
      ... This patch applies on top of Paul Menage's container patches posted at ... It implements a controller within the containers framework for limiting ... The memory controller was discussed at length in the RFC posted to lkml ...
      (Linux-Kernel)