I have released kexec-tools-testing 20070330. SUMMARY =======
There have been no changes since the 20070319-rc snapshot. I believe this is a stable release and encourage people to begin using it. It is available kernel.org and mirrors http://www.kernel.org/pub/linux/kernel/people/horms/kexec-tools/ And on my site http://www.vergenet.net/linux/kexec/kexec-tools/ It has also been tagged in git http://git.kernel.org/?p=linux/kernel/git/horms/kexec-tools-testing.git git clone git://git.kernel.org/pub/scm/linux/kernel/git/horms/kexec-tools-testing.git cd kexec-tools-testing git branch v20070319-rc v20070319 git checkout v20070319 DETAILS ======= Some more detailed release notes follow. Testing ------- The following tests were conducted by Magnus Damm on the 20070319-rc snapshot. They can all be found in the discussion following the following post. http://lists.linux-foundation.org/pipermail/fastboot/2007-March/006552.html * From Magnus Damm Test results for kexec-tools-testing 20070319-rc on i386 and x86_64: Kexec Kexec Kexec Kexec Kdump*0 Kdump*1 bzImage bzImage vmlinux vmlinux bzImage bzImage -> -> -> -> -> -> Kernel Arch bzImage vmlinux vmlinux bzImage vmlinux bzImage 2.6.18 i386 PASS PASS PASS PASS PASS 2.6.18 i386-pae PASS PASS PASS PASS PASS 2.6.18 x86_64 PASS PASS PASS PASS PASS 2.6.19 i386 PASS PASS PASS PASS PASS 2.6.19 i386-pae PASS PASS PASS PASS PASS 2.6.19 x86_64 PASS PASS PASS PASS PASS 2.6.20*2 i386 PASS PASS FAIL*3 PASS PASS PASS 2.6.20*2 i386-pae PASS PASS FAIL*3 PASS PASS PASS 2.6.20 x86_64 PASS PASS PASS PASS PASS PASS 2.6.21-rc5*2 i386 PASS PASS FAIL*3 PASS PASS PASS 2.6.21-rc5*2 i386-pae PASS PASS FAIL*3 PASS PASS PASS 2.6.21-rc5 x86_64 PASS PASS PASS PASS *0: Crash kernel compiled with CONFIG_PHYSICAL_START=0x2000000 *1: Requires CONFIG_RELOCATABLE=y, feature available for i386 from 2.6.20 *2: Single kernel compiled with CONFIG_RELOCATABLE=y *3: Unstable, sometimes ok * From Vivek Goyal I tested Kexec/Kdump on i386 box with kernel version 2.6.21-rc4. It works fine for me. * From Magnus Damm Test results for kexec-tools-testing 20070319-rc on HP Integrity rx2620 (ia64) Kexec Kdump vmlinux vmlinux -> -> Kernel Arch vmlinux vmlinux 2.6.20 ia64 PASS FAIL*,** 2.6.21-rc4 ia64 PASS PASS * Kdump kernel support not working properly for ia64 in 2.6.20 ** Incompatible Kdump interface (EFI_LOADER_DATA for ELF core header) * From myself On a Tiger2 (ia64) Kexec Kdump vmlinux.gz vmlinux.gz -> -> Kernel Arch vmlinux.gz vmlinux.gz 2.6.20 ia64 PASS PASS* 2.6.21-rc4 ia64 PASS PASS * Vmcore is empty, which is a known bug that has been fixed * From Jay Lan This one works for me on these cases on IA64 SN platform with 2.6.21-rc3: sysrq-c nmi I tested both 'kexec -l' and 'kexec -p'. The tests were from vmlinux to vmlinux. * From Sachin P. Sand Tested on couple of Powerpc boxes with 2.6.21-rc5 kernel. Works fine for me. Problems -------- There are two known problems which are currently under investigation. As they have not been resolved fully and appear to be problems that affect a subset of users, I have omitted any fixes from the release. 1. Jonathan Lim reports that crash cannot read the vmcore file correctly on ia64 due to a miscalculation of the base address. http://lists.linux-foundation.org/pipermail/fastboot/2007-March/006699.html This particular problem should only affect vmcore analysis on ia64. A fix is being worked on. If this problem is a show stopper for you then I recommend looking through the patches in the thread following the link above. 2. Magnus Damm reports some problems compiling in xen support relating to an indirect dependency on pthreads. http://lists.linux-foundation.org/pipermail/fastboot/2007-March/006716.html This only affects users trying to compile in extended xen support, and it seems quite possible it is due to a quirk in Magnus' build environment. Location -------- Paul Mundt recommended uploading the release to /pub/linux/utils/kernel/. I am all for this, along with renaming this tree to kexec-tools, as the other tree of that name is mostly dead. I will see about making it so, likely for the next release http://lists.linux-foundation.org/pipermail/fastboot/2007-March/006584.html ChangeLog --------- commit 1f0a51945382941b665b17edffe9a535105563e5 Author: Simon Horman <[EMAIL PROTECTED]> Date: Fri Mar 30 13:33:40 2007 +0900 kexec-tools-testing 20070330 release <[EMAIL PROTECTED]> commit de2706db2f34ac16a9aa3191fa3368cda2ce6339 Author: Simon Horman <[EMAIL PROTECTED]> Date: Mon Mar 19 13:18:17 2007 +0900 kexec-tools-testing 20070319-rc kexec-tools-testing 20070319-rc Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit a79df8a5597261fdbc7926b5406e163bb749ccbb Author: Ian Campbell <[EMAIL PROTECTED]> Date: Fri Mar 16 10:10:14 2007 +0000 Fix a cut and paste error in the --without-zlib configure option help. Signed-off-by: Ian Campbell <[EMAIL PROTECTED]> Acked-by: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit d73cc37554560b7f282d6a3f2472f6a92ec1458a Author: Simon Horman <[EMAIL PROTECTED]> Date: Mon Mar 19 12:56:59 2007 +0900 Default to --with_xen It seems safe enough to enable --with_xen by default as the required header is checked for later on in confiugre, and will turn off --with_xen if needed. Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit cdbc9b011fe43407908632d842e3a39e495e48d9 Author: Ian Campbell <[EMAIL PROTECTED]> Date: Fri Mar 16 10:10:24 2007 +0000 Set crash dump ELF header e_machine field based on underlying hypervisor architecture. This is necessary when running Xen with a 64 bit hypervisor and 32 bit domain 0 since the CPU crash notes will be 64 bit. Detecting the hypervisor archiecture requires libxenctrl and therefore this support is optional and disabled by default. Signed-off-by: Ian Campbell <[EMAIL PROTECTED]> Acked-by: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit efac1da616a211517a4b0eaae098db6ade3bdd26 Author: Ian Campbell <[EMAIL PROTECTED]> Date: Fri Mar 16 14:41:24 2007 +0000 Ignore PT_NOTE program headers with offset 0. There is a binutils bug which causes PT_NOTE segments to have an offset of zero (http://sourceware.org/bugzilla/show_bug.cgi?id=594). The fix has not made it into any release binutils, although several distributions have backported it. Signed-off-by: Ian Campbell <[EMAIL PROTECTED]> Acked-by: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 78cd98999c9e00c2fe3347d4664c5bdc8dd91497 Author: Magnus Damm <[EMAIL PROTECTED]> Date: Thu Mar 15 17:53:19 2007 +0900 Move memory range variables Move memory range variables The common kexec code is currently using two global variables to keep track of memory ranges. Other data is kept in a per-instance structure. This mix is of per-instance and global variables is confusing and leads to messy code in general. So let's not. This patch moves the global variables into struct kexec_info and makes sure that structure is passed along where needed. No logic is changed. Signed-off-by: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit bc1eb4e071f864de82474bade25c0273a7fecb6b Author: Horms <[EMAIL PROTECTED]> Date: Fri Mar 16 11:29:34 2007 +0900 kexec-tools: arch_options seems to be unused on sh arch_options, declared in kexec/arch/sh/kexec-sh.c seems to be unused, so remove it. Signed-off-by: Simon Horman <[EMAIL PROTECTED]> Acked-by: Paul Mundt <[EMAIL PROTECTED]> commit d10e7735d93166fbfcc3263b1f77e7fc5de0a541 Author: Bernhard Walle <[EMAIL PROTECTED]> Date: Wed Mar 14 15:48:15 2007 +0100 Fix wrong max_memory_ranges value The value of max_memory_ranges is calculated in count_memory_ranges() and only counts the memory@ nodes. However, in get_devtree_details(), pci@ nodes are also added to exclude_range just at the end of the loop. This patch changes count_memory_ranges() to also consider pci@ nodes in /proc/device-tree. Signed-off-by: Bernhard Walle <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit cd6091ebd1c0ebc608390996c1cb088fab13ec79 Author: Magnus Damm <[EMAIL PROTECTED]> Date: Thu Mar 15 17:55:08 2007 +0900 Remove duplicate MAX_LINE Remove duplicate MAX_LINE MAX_LINE is already defined in kexec/kexec.h Signed-off-by: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 5d6f808c6468082b20f899114ef023fdaeb44615 Author: Magnus Damm <[EMAIL PROTECTED]> Date: Thu Mar 15 17:56:46 2007 +0900 Kdump is not supported on ppc, s390, sh Kdump is not supported on ppc, s390, sh So let's return that no crash kernel memory is found. Signed-off-by: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit d6c231c6f341d839fbfb09ea0814dd9a5ccdb005 Author: Vivek Goyal <[EMAIL PROTECTED]> Date: Wed Mar 7 13:52:18 2007 +0530 kexec-tools: x86_64 bzImage load purgatory below 2G o Load purgatory below 2G while loading bzImage. x86_64 purgatory got relocation types R_X86_64_32S hence got to be below 2G. Signed-off-by: Vivek Goyal <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 924b985aaba1a3cc17f419e93b3a31568070df7a Author: Vivek Goyal <[EMAIL PROTECTED]> Date: Wed Mar 7 13:50:22 2007 +0530 kexec-tools: x86_64 Print correct info in reloc_name function o A minor fix. In debug printf, reloc_name was printing wrong relocation info Signed-off-by: Vivek Goyal <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit bcd72df212636eee645276a2409b0eef8c250dee Author: Magnus Damm <[EMAIL PROTECTED]> Date: Thu Feb 15 22:42:35 2007 +0900 kexec-tools: Use EFI_LOADER_DATA for ELF core header (ia64) The address where the ELF core header is stored is passed to the secondary kernel as a kernel command line option. The memory area for this header is also marked as a separate EFI memory descriptor on ia64. The separate EFI memory descriptor is at the moment of the type EFI_UNUSABLE_MEMORY. With such a type the secondary kernel skips over the entire memory granule (config option, 16M or 64M) when detecting memory. If we are lucky we will just lose some memory, but if we happen to have data in the same granule (such as an initramfs image), then this data will never get mapped and the kernel bombs out when trying to access it. So this is an attempt to fix this by changing the EFI memory descriptor type into EFI_LOADER_DATA. This type is the same type used for the kernel data and for initramfs. In the secondary kernel we then handle the ELF core header data the same way as we handle the initramfs image. This strategy requires changes in the secondary kernel as well, I'll post the kernel patches in a little while. Signed-off-by: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 56595256907a3b31d2849dfe185d0d16b2ead471 Author: Michael Ellerman <[EMAIL PROTECTED]> Date: Fri Mar 2 14:52:58 2007 +0900 kexec-tools: ppc64: Check return value of setup_memory_ranges() setup_memory_ranges() can fail, so we must check its return value. Signed-off-by: Michael Ellerman <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 05abdb92a5f5c32659620ffdb2c6e48f0b2428ae Author: Sachin P. Sant <[EMAIL PROTECTED]> Date: Tue Feb 27 11:25:07 2007 +0530 kexec-tools : fix compile time error on x86-64 On x86_64 machines running kernels having relocatale kernel patches compilation of kexec tools fails with following error. kexec/arch/i386/kexec-multiboot-x86.c:347: warning: implicit declaration of function ‘_AC’ kexec/arch/i386/kexec-multiboot-x86.c:347: error: ‘UL’ undeclared (first use in this function) kexec/arch/i386/kexec-multiboot-x86.c:347: error: (Each undeclared identifier is reported only once kexec/arch/i386/kexec-multiboot-x86.c:347: error: for each function it appears in.) The error is bacause of the use of PAGE_SIZE macro in the above file. On x86_64 arch PAGE_SIZE is defined as #define PAGE_SIZE (_AC(1,UL) << PAGE_SHIFT) and hence fails to find definitation for _AC(). The correct way to fix this is to use getpagesize() function instead of PAGE_SIZE macro. Signed-off-by : Sachin Sant <[EMAIL PROTECTED]> Acked-by: Vivek Goyal <[EMAIL PROTECTED]> Signed-off-by : Simon Horman <[EMAIL PROTECTED]> commit d869eec86724069242679e458a0a24b8274d1cc4 Author: Magnus Damm <[EMAIL PROTECTED]> Date: Thu Feb 15 19:39:41 2007 +0900 Make sure max_memory_ranges are cleared before incremented Make sure max_memory_ranges are cleared before incremented I happened to call get_memory_ranges() twice on ia64 while debugging some kdump issue the other day. This did not work as expected because the variable max_memory_ranges was not cleared before being incremented. So the second caller gets more ranges than needed. This is normally not a problem - get_memory_ranges() is only called once - but I think it is good coding practice to start from a known state. Signed-off-by: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit f09cb6fb977e58e77054107e1df908bb18b92e86 Author: Magnus Damm <[EMAIL PROTECTED]> Date: Thu Feb 15 18:57:06 2007 +0900 Keep alignment comment in elf code and use ELF_CORE_HEADER_ALIGN Keep alignment comment in elf code and use ELF_CORE_HEADER_ALIGN This patch puts back and extends the alignment comment in crashdump-elf.c and adds a small check to make sure the arch-specific code aligns properly. Instead of hardcoding 1024 we introduce ELF_CORE_HEADER_ALIGN. The idea behind the alignment requirement is explained here: http://lists.osdl.org/mailman/htdig/fastboot/2006-November/005147.html Signed-off-by: Magnus Damm <[EMAIL PROTECTED]> Acked-by: Vivek Goyal <[EMAIL PROTECTED]> Removed trainling whitespace after "kilobytes," Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 40f4b56e54c3e42ef32189682a85bcdc1bf240f1 Author: Zou Nan hai <[EMAIL PROTECTED]> Date: Wed Feb 14 12:51:32 2007 +0900 Kexec-tools: Fix physcal address value in vmcore ELF segment header I used fixed 64M as physical offset in vmcore ELF segment header. This gives trouble to crash utility to analyze vmcore on platform that load kernel to a different address. This patch will fix it. Signed-off-by: Zou Nan hai <[EMAIL PROTECTED]> This is the second time this patch has been applied, it seems to have been inadvertantly reverted as part of the crash_create_elf64_headers() patch, f038d30bff8510a1df1e72af08db1766581d1f2c. Cc: Jay Lan <[EMAIL PROTECTED]> Cc: Magnus Damm <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit a62dba3262250b650abc84b42d7f95521b69a1c8 Author: Simon Horman <[EMAIL PROTECTED]> Date: Wed Feb 14 11:57:55 2007 +0900 kexec-tools: load_crashdump_segments(): size should really be an unsigned long load_crashdump_segments(): size should really be an unsigned long Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 3091b1398b6385186a7afaa60e303e84c0bc7bee Author: Simon Horman <[EMAIL PROTECTED]> Date: Wed Feb 14 11:57:50 2007 +0900 kexec-tools: Make cmdline_add_elfcorehdr() <= 80col Make kexec/arch/ia64/crashdump-ia64.c:Make cmdline_add_elfcorehdr() <= 80col Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 38f3a78abeb98361c1c63a5d1b7031af542545e7 Author: Simon Horman <[EMAIL PROTECTED]> Date: Wed Feb 14 11:57:38 2007 +0900 kexec-tools: Add alignment parameter to crash_create_XXX_headers crash_create_XXX_headers assumes that all arhitectures need an alignment of 1024bytes. But on ia64 at least this is not true. This patch adds an alignment parameter to crash_create_XXX_headers, and calls passes a value of 1024 for all architectures except ia64, where EFI_PAGE_SIZE (4096) is passed. If there are problems with alignment on other architectures hopefully this facility will work for them too. Cc: Bernhard Walle <[EMAIL PROTECTED]> Cc: Magnus Damm <[EMAIL PROTECTED]> Cc: Zou, Nanhai <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> kexec/arch/i386/crashdump-x86.c | 4 ++-- kexec/arch/ia64/crashdump-ia64.c | 5 +++-- kexec/arch/ppc64/crashdump-ppc64.c | 4 ++-- kexec/arch/x86_64/crashdump-x86_64.c | 2 +- kexec/crashdump-elf.c | 11 ++--------- kexec/crashdump.h | 6 ++++-- 6 files changed, 14 insertions(+), 18 deletions(-) commit 5417f8ed03ab87fdcfeb78418ac066cc26598d58 Author: Bernhard Walle <[EMAIL PROTECTED]> Date: Tue Feb 13 17:13:50 2007 +0900 Patch from Bernhard Walle to fix up the help message a bit. Signed-off-by: Simon Horman <[EMAIL PROTECTED]> kexec/kexec.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) commit c0c8232ff9385cb9abed468eebaef2cc0d6b1450 Author: Paul Mundt <[EMAIL PROTECTED]> Date: Thu Feb 8 19:05:50 2007 +0900 Trivial change adding sh4a to the sh targets. Trivial change adding sh4a to the sh targets. Signed-off-by: Paul Mundt <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 49c5c5b662774e91ecebd95e4f7650e6567a6624 Author: Jay Lan <[EMAIL PROTECTED]> Date: Fri Feb 2 16:34:39 2007 -0800 IA64 kexec-tools: memory_ranges arrays scalability issue There are two memory_ranges arrays declared in the IA64 kexec code. One in kexec-ia64.c and the other one in crashdump-ia64.c. They currently were allocated as a hard-coded size of array. Since SN systems may scale to hunders of nodes and each node may contain up to 12 DIMMs, the hard-coded size of 1024 is not enough for very large systems. The size of either array can not be greater than the number of entries in /proc/iomem, which is saved as "max_memory_ranges" and is used to dynamically allocate the two arrays. Signed-off-by: Jay Lan <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 02e6bd686d64abd747e17c268dc1b913e14b5c91 Author: Simon Horman <[EMAIL PROTECTED]> Date: Fri Feb 2 15:12:02 2007 +0900 Use xmalloc instead of malloc in locate_hole() to standardise behaviour on error Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 3d15dc049d5771d2e9b0e808ad3554fd1158b1ac Author: Roman Kononov <[EMAIL PROTECTED]> Date: Thu Feb 1 14:21:03 2007 -0800 xmalloc; empty memory ranges This patch fixes zero-size xmalloc failure, which I ran across with a uClibc implementation of malloc(), kexec'ing x86_64 vmlinux. Additionally, it removes inefficiencies related to creating zero-sized memory ranges, which I noticed under the same conditions. Signed-off-by: Roman Kononov <[EMAIL PROTECTED]> Reformated and rediffed as it wouldn't apply to my tree for some reason. Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit a6eee1488fd9a9fb3ca483eed92977dd9e4cacb6 Author: Roman Kononov <[EMAIL PROTECTED]> Date: Thu Feb 1 14:16:45 2007 -0800 kexec i386 real mode patch Computation of the real mode CS value is corrected. Real mode debugging feature is corrected. Signed-off-by: Roman Kononov <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 5299e8183dd984d485c5037cc717a0c0b04cd5be Author: Simon Horman <[EMAIL PROTECTED]> Date: Thu Feb 1 18:17:31 2007 +0900 Remove 9bc3f8f7df46d8253bccaede1ea5ad3f21678f80, which is bogus Signed-off-by: Horms <[EMAIL PROTECTED]> commit 8323ed7b3119077cd6fef6ca3615ba1b5b24d2cd Author: Horms <[EMAIL PROTECTED]> Date: Thu Feb 1 11:51:05 2007 +0900 Clean up memory allocations in locate_hole() * Exit if malloc fails - previously the error was ignored * Free allocated memory before returning Signed-off-by: Simon Horman <[EMAIL PROTECTED]> Acked-by: Magnus Damm <[EMAIL PROTECTED]> commit 9bc3f8f7df46d8253bccaede1ea5ad3f21678f80 Author: Simon Horman <[EMAIL PROTECTED]> Date: Thu Feb 1 17:28:06 2007 +0900 Missing portions of the sh code Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit e4656a54370d0b1b398e05217f6a43f3ef7dbeb7 Author: Simon Horman <[EMAIL PROTECTED]> Date: Thu Feb 1 17:09:16 2007 +0900 kexec-tools: Upport for sh support Some minor changes needed for sh support to compile Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 11d346a8339771bc04708f1595d8ac76de4c661a Author: Simon Horman <[EMAIL PROTECTED]> Date: Thu Feb 1 17:09:16 2007 +0900 kexec-tools: Add sh support to configure.ac Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 843c2d1ec1bbd2a1c46c99aa24eb1ae0b2109bd6 Author: Simon Horman <[EMAIL PROTECTED]> Date: Thu Feb 1 17:09:16 2007 +0900 kexec-tools: Remove trailing whitespace in sh code Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 35917b5e76e8aef49920cc9693c94863f4ae507b Author: Simon Horman <[EMAIL PROTECTED]> Date: Thu Feb 1 17:09:16 2007 +0900 kexec-tools: Add sh support Patch found on http://eggplant.ddo.jp/www/download/debian26/source/kexec-tools/kexec-tools_1.101-2sh.diff.gz According to Paul Mundt <[EMAIL PROTECTED]> it was originally by kogiidena <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> Acked-by: Magnus Damm <[EMAIL PROTECTED]> commit 17aef86b03edc9867f990434bc30be0ac498376d Author: Simon Horman <[EMAIL PROTECTED]> Date: Thu Feb 1 11:45:14 2007 +0900 Add maintainer information to AUTHORS file Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit acd0bdeab5b2932a48165efbf79a21e111e950ae Author: Jay Lan <[EMAIL PROTECTED]> Date: Wed Jan 31 17:54:22 2007 -0800 IA64 kexec-tools: efi_memmap overflow on large systems This patch fixes a efi_memmap overflow problem on large system. Currently the kexec allocates statically 16k buffer to contain efi_memmap. It can hold about 333 entries. It causes data corruption on large system. This patch would let kexec allocate the efi_memmap at run time using the actual size allocated in the production kernel. Signed-off-by: Jay Lan <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 4b94de0aaa7b0fb911a7513f90e5b928799c7c2a Author: Sachin P. Sant <[EMAIL PROTECTED]> Date: Mon Jan 29 15:10:46 2007 +0530 ppc64 kexec tools code cleanup. * PPC64 specific code in kexec tools uses struct exclude_range for storing * information related to exclude regions. This structure is not very different * from struct memory_range. So remove this extra structure and instead use * the memory_range structure. Signed-off-by : Sachin Sant <[EMAIL PROTECTED]> Signed-off-by : Simon Horman <[EMAIL PROTECTED]> commit f8afe9befb4918853b3002725e53ddbbd43cf719 Author: Sachin P. Sant <[EMAIL PROTECTED]> Date: Tue Jan 23 20:12:33 2007 +0530 cp /proc/vmcore fails on core generated using latest kexec tools. * On ppc64 memory ranges in device-tree is denoted as start and size. * While in case of other architectures like i386 it is represented as start and * end. Because of this when loading the memory ranges in crashdump-elf.c the * filesz calculation using start and end values of memory range goes for a toss. * * phdr->p_filesz = phdr->p_memsz = mend - mstart + 1; * * Because of the +1 in above statement the generated vmcore is not a valid * dump file. * * There are different ways in which this problem can be fixed. * A. Add a ifdef in crashdump-elf.c for elf machine type. * if EM_PPC64 then * filesz = end - start; * else * filesz = end - start + 1; * fi * B. Change the ppc64 specific code so as to follow the i386 convention when * it comes to representing memory ranges. * C. Create a PPC64 specific function to populate crash ranges and not use * the generic function from crashdump-elf.c * * Of all these solutions B is the smallest and works well. Here is a patch * to implement the same. * Signed-off-by : Sachin Sant <[EMAIL PROTECTED]> Removed trailing whitespace Signed-off-by : Simon Horman <[EMAIL PROTECTED]> commit 7792798a79b78a5d566f70c9f00237d050b01350 Author: Sachin P. Sant <[EMAIL PROTECTED]> Date: Fri Dec 22 12:34:55 2006 +0530 ppc64: Dynamic mem allocation kexec tools Cleanup update Here is a update to the previously submitted patch to dynamically allocate memory for memory range data structures. This patch adds following functionality * memset all allocated memory ranges pointers. * Simplify some of the code related to memory ranges allocation. Signed-off-by : Sachin Sant <[EMAIL PROTECTED]> * Removed trailing whitespace Signed-off-by : Simon Horman <[EMAIL PROTECTED]> commit 64d74e97fddefa8241fb493fa5b497625317342c Author: Simon Horman <[EMAIL PROTECTED]> Date: Fri Dec 22 16:31:19 2006 +0900 kexec-tools: Add -git to version so it doesn't look like a release Add -git to version so it doesn't look like a release. This is just so when people built stuff from git it can be identified as such from the version string. Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit b26698511bd64550a1e439a4658d0d8706963016 Author: Sachin P. Sant <[EMAIL PROTECTED]> Date: Thu Dec 21 10:49:39 2006 +0530 kexec-tool: Use the appropriate format in debug print statements * In kexec-ppc64.c, wrong array name was used to print DEBUG information. * Use the correct array name while printing debug information. Signed-off-by : Sachin Sant <[EMAIL PROTECTED]> * Make use of dfprintf * Use %llx instead of %L for long long arguments * Remove trailing whitespace Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit cdab051ce335c98e265a7824280755368799bd7a Author: Horms <[EMAIL PROTECTED]> Date: Wed Dec 20 15:55:10 2006 +0900 kexec-tool: Use the appropriate format in debug print statements Use the appropriate format in debug print statements. This is kind of messy because the same code is compiled with different definitions of the PHDR type. The solution below is the best I can think of at this time. Cc: Magnus Damm <[EMAIL PROTECTED]> Cc: Sachin P. Sant <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 1f0c1b411631a4ae320a7b450adee8475a8a0e92 Author: Horms <[EMAIL PROTECTED]> Date: Wed Dec 20 15:55:10 2006 +0900 kexec-tool: Use the appropriate format in debug print statements Use the appropriate format in debug print statements. Cc: Sachin P. Sant <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 1e2050cf828181eb125dfdf6af99a4f5170c0462 Author: Sachin P. Sant <[EMAIL PROTECTED]> Date: Tue Dec 19 14:41:11 2006 +0530 fix ppc64 kexec tools build failure when DEBUG is enabled. When DEBUG [ in kexec/arch/ppc64/crashdump-ppc64.c ] is defined, kexec tools for ppc64 fails with following error kexec/arch/ppc64/crashdump-ppc64.c: In function get_crash_memory_ranges': kexec/arch/ppc64/crashdump-ppc64.c:235: error: 'redeclaration of i' with no linkage kexec/arch/ppc64/crashdump-ppc64.c:109: error: previous declaration of 'i' was here Here is a patch to fix the above error. Thanks -Sachin Signed-off-by : Sachin Sant <[EMAIL PROTECTED]> Signed-off-by : Simon Horman <[EMAIL PROTECTED]> commit bbc9e730b4c407e8e9587dbe362513f0efb25156 Author: Simon Horman <[EMAIL PROTECTED]> Date: Mon Dec 18 12:05:14 2006 +0900 kexec-tools: Make kexec/kexec.c 80col wide or less Make kexec/kexec.c 80col wide or less Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 3634a1d19dc17d700cca1e7eae757a53778124db Author: Horms <[EMAIL PROTECTED]> Date: Wed Dec 13 11:33:35 2006 +0900 kexec-tools: fix spelling of address in help text fix spelling of address in help text Cc: Dave Anderson <[EMAIL PROTECTED]> Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 41bf7ad6f448edba12cd774c898c823d5d6d265d Author: Simon Horman <[EMAIL PROTECTED]> Date: Mon Dec 18 12:05:13 2006 +0900 kexec-tools: Move defines to the top of kexec/arch/ia64/kexec-elf-ia64.c Move defines to the top of kexec/arch/ia64/kexec-elf-ia64.c Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit e2ec8c694bea047458ec6d7460991939f87fd990 Author: Simon Horman <[EMAIL PROTECTED]> Date: Mon Dec 18 12:05:13 2006 +0900 kexec-tools: Make kexec/arch/ia64/kexec-elf-ia64.c <= 80col wide Make kexec/arch/ia64/kexec-elf-ia64.c <= 80col wide Signed-off-by: Simon Horman <[EMAIL PROTECTED]> commit 554d26792d53e54a5d5331548134326046d620b9 Author: Horms <[EMAIL PROTECTED]> Date: Wed Dec 13 11:14:16 2006 +0900 kexec-tools: ia64: fix bogus mem_max = ULONG_MAX fix bogus mem_max = ULONG_MAX Cc: Bob Montgomery <[EMAIL PROTECTED]> Signed-Off-By: Simon Horman <[EMAIL PROTECTED]> commit bac7bfac708e63f9e974b742aad79e08e43f7cb5 Author: Sachin P. Sant <[EMAIL PROTECTED]> Date: Thu Dec 14 15:08:29 2006 +0530 Dynamic memory allocation : ppc64 kexec tools Cleanup kexec tools for ppc64 uses static arrays [of length MAX_MEMORY_RANGES] to store data related to memory regions. This used to eat up lot's of memory. There were some instances where more memory regions existed, which made kexec tools unusable on those machines. The following patch gets rid of MAX_MEMORY_RANGES macro and uses dynamic memory allocation for the above mentioned structures. Signed-off-by: Sachin Sant <[EMAIL PROTECTED]> Removed trailing whitespace Signed-off-by: Simon Horman <[EMAIL PROTECTED]> _______________________________________________ fastboot mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/fastboot
