News - Linux Kernel Crash Dump


LKCD 6.0.0 is released!

Why the big jump in version numbers?

This is a major new release. With this release we are also changing how we develop and deliver LKCD. We are moving to a style versioning where even numbers are releases and odd number versions are development branches. The odd number branch will be used for future versions that break the dump file .

Also with this release we will finally utilize the main download section area on SourceForge. We will be releasing single patch files against specific kernel versions. This allows users to download 1 file, patch and rebuild their kernel to have LKCD support.

All download images (RPMs, patches, etc.) are being placed in the main download area on SourceForge, which can be found off of the main page here.


Kernel patches for 2.4.20 are now on the web site. They are available here.


Kernel patches for 2.5.44 are now on the web site. They are available here.


Kernel patches for 2.5.41 are now on the web site. They are available here.


LKCD 4.1-1 is released. Time to celebrate -- no more delays, waiting for random patches and various bug fixes. Thanks to everyone who has contributed to the project to this point, and let's get on with our linux-2.5 work (finally!)


Some of us are just back from LinuxWorld in New York, after having presented on Linux and RAS. LKCD 4.0.3 is ready to be released, and we are waiting for some last-minute fixes from SGI for ia64 platforms. Hopefully we'll get a BK patch in for 2.5.5 soon!


It's been quite some time since we've updated the news, but that's not due to any shortage of things happening. It's been for a number of reasons, not the least of which has been access to to make updates. So here's the latest news:

  • The web pages are now moved off of and onto;
  • Release 4.0 is imminent;
  • The 4.0 code will be for 2.4 kernel releases only; 2.2 code is still available in the kernel tree, but is not being maintained actively (although we may go back and backport the 2.4 changes to 2.2 in the future);
  • The entire dump infrastructure now supports dump modules in the current CVS tree; in addition, the dump code can be a module (and compression is now module based!)
  • The user script infrastructure has changed, along with setting up dumping. Now, /sbin/lkcd replaces /sbin/vmdump, and /sbin/lkcd_config will configure the system for dumping. /sbin/lkcd_ksyms is also available for dumping out kernel symbols (for modules as well). The sysconfig file is /etc/sysconfig/dump, and /dev/dump is a standard major/minor device which represents the dump device driver;
  • A number of contributors from IBM in Germany and India are now contributing significantly to LKCD, both in the kernel and user script arena;
  • Intel, Storigen, MCL, Fujitsu and others have contributed code to the effort;
  • lkcdutils will now have the kernel patch in it; the release number of lkcdutils will be tied directly to the kernel patch as a result.
There are probably lots of other very significant changes, additions, deletions, etc. The release of 4.0 should be by the end of this month. It has been delayed due to access restrictions on, which have now been dealt with.


LKCD 3.0 is now available. LKCD 3.0 provides support for both 2.2 and 2.4 kernels. Highlights of this new release include:

  • LKCD now supports IDE dumps with 2.2 kernels.

  • The lcrash utility has been removed from the LKCD kernel patch and is now available as part of the new lkcdutils RPM. The LKCD RPM also contains a number of LKCD startup scripts.

  • The lcrash utility no longer needs to be recompiled every time a new kernel is built. That is because the LKCD 3.0 kernel patch introduces a new kernel target, called Kerntypes. The Kerntypes target, which contains stabs data for most kernel data types, is installed in the /boot directory along with the and kernel image. The lcrash utility is able to use the type information contained in Kerntypes when it references kernel data structures in a dump. This approach lets lcrash determine offsets to structure members on-the-fly. It also allows a single lcrash binary to analyze crash dumps generated by multiple kernels -- including 2.2 and 2.4 kernels.

  • The LKCD kernel patch for the 2.4 kernel also contains support for the ia64 architecture. A separate ia64 lkcdutils RPM is also available.

Please send any feedback regarding the LKCD 3.0 release to here.


The latest version of LKCD for 2.3 kernels is now available. You can build it into your kernel and get things running pretty quickly. One note, however -- don't build it as a module just yet, as we're working on the stack trace code for 'lcrash' for generated crashes. Give it some time -- it'll be done soon enough.

We'll also try to backport the 2.3 changes to 2.2 so you can get your IDE systems working with LKCD. We'd like to remove the SCSI disk restriction as soon as we can.

Please send any feedback regarding the 2.3 code to here.


Additional support for ia64 has been added to the 2.3 LKCD source tree on SourceForge. Changes to the kernel have been checked in (still not fully functional). In addition, more work has been done on ia64 support for the lcrash utility. Until the kernel crash dump facility is fully implemented, it is possible to run lcrash against a live ia64 system (you must be root to access /dev/mem). Almost all of the functionality implemented for the i386 architecture is now available on ia64 systems (at this time, the stack trace facilities are only partially implemented).


Although it's been a while since we posted any news, that doesn't mean that nothing's happened. The LKCD project has been moving forward on several fronts. We've set up a source repository for the LKCD project on SourceForge, to make it easier for developers from multiple organizations to contribute. The official web site for the LKCD project will remain on In addition, any patches or downloads that get released will be made available from this site.

The Source Forge repository contains source trees for both 2.2 and 2.3 versions of LKCD. Just like with the Linux kernel, the 2.2 tree is considered "stable" and provides support for the latest released kernel (note that the last patch released, lkcd2.2.13-1.0.4.patch, supports the 2.2.13 kernel). The 2.3 tree does not yet contain a fully functional LKCD implementation. There is still kernel work going on, much of which has not been checked in yet. A more fully functional version of lcrash has been checked in, however, that provides full support is for the i386 architecture and partial support for the ia64 architecture (work is also under way to provide support for the Alpha architecture).

In addition, a new feature has been added to lcrash that allows the user to generate a system crash dump from a live system (without crashing the system). This new feature provides a means for generating crash dumps on systems with ide disks (although not when a system crash occurs). It also provides a snapshot of system memory, including kernel state, without impacting the system. This new feature is available for both 2.2 and 2.3 versions of LKCD (i386 architecture only at this time).


The talk at LinuxWorld 2000 went well. We had between 80 - 100 attendees at the conference session, along with a number of very good questions about our future direction and what capabilities currently exist. We have a lot of hope that the future of LKCD is to make it a part of the base Linux release.

The conference presentation slides and technical paper can be downloaded from the documentation download directory.


Well, we've now released version 1.0.4. This has a couple of minor changes added to the release, the most significant being the changes to the stabs code to add better symbol table support. In addition, dump headers are now changed so that different architectures can create their own dump headers and use them however they want. We believe that the kernel code is now complete as far as Linux 2.2 is concerned. Commands can and will still be added to 'lcrash', however, to make it more feature-friendly.

Feel free to download it and give it a try. As soon as I have it all ported over to 2.2.14 (which should be fairly fast), I'll upload a version to the 1.0.4 directory. Let me know if you have any problems with the image.

Also, we'll be moving our work to Linux 2.3 as soon as I get some sort of response from Stephen Tweedie regarding his kiobuf work. We are willing to do some of the work, but we're waiting to find out if he has done it already. Regardless, we hope this will lead to a fast port over to 2.3 -- I suspect this won't take long, but again, this leaves us in the position of waiting for someone to finish some code in the kernel. Trust me, we'd love to do the work ourselves ... :) Needless to say, the port for the kernel portion of LKCD is pretty much done.

Linus has stated that he will not accept LKCD into the 2.3 tree. Given this, we'll be doing our best to keep up with the latest development and foundation releases until 2.5, where we expect this to become a base part of the kernel. Stay tuned.

Finally, I'll try to update the News stuff more frequently. We've been releasing other stuff in the meantime, so I haven't made it a really good habit as of yet. Thanks for your patience.


We're currently up to version 1.0.3. The latest release has quite a few bug fixes from the users, and we're trying to keep up with the request demand (such as IDE support, etc.) We'll be doing our best to add features, improve the product, and attempt to make this a part of the standard Linux distribution.

Also, Keith Owens has started development on 2.3.X, and has the vmdump code complete, but not the raw I/O code. If you'd like to take a look at what he has so far (and it is experimental at best), please review:


Thank you for all the positive feedback so far. Please continue to let us know how we can make things better!


Okay, we're going to release. After much waiting for the raw I/O patch, it's finished! We took a little extra time to make sure everything looked correct, and now we're releasing to the world. Please install and let us know what problems, questions, concerns, comments, etc., you may have. Send E-mail to Grab the latest version of the software from here!


I apologize for delay in getting this source released. I have Stephen Tweedie's raw I/O patch, and I have all our source code in an RPM and patch ready to go, but I don't have the SGI raw I/O patch available to me yet. I could go into a ton of reasons why this isn't ready, but ...

I'll try pushing for it again today.


We've finished the base 1.0 code! I'll try to have something out in a day or two as an RPM/patch set. You'll need a few additional things, and I'll try to have the documentation explain everything.


All kernel code for crash dumping has been checked into the SGI 1.1 tree, and libklib code is now being built without problems. In addition, lcrash is now built and running against the new libklib.a. We are currently finishing the spec file for the lcrash and user level scripts for configuring the system for crash dumps and also saving any dumps that may have occurred between system resets. It is only a matter of time before we have an image available. Unfortunately, the release will be pending the release of the raw I/O patch, which is a prerequisite for our product.


We have finished all code for the kernel portion of dumping memory to the primary swap partition, pointed at by /dev/dump. We have also finished most of the lcrash code, but we are still creating the code for generating the crash report. In addition to all of this, the scripts to recover the crash dump after a system failure are in place.

Modified: 01/06/05 02:08:54 PM Logo © 2005 LKCD Team