Hello community, here is the log from the commit of package crash for openSUSE:Factory checked in at Fri Jan 7 13:58:35 CET 2011. -------- --- crash/crash.changes 2010-12-20 17:13:26.000000000 +0100 +++ /mounts/work_src_done/STABLE/crash/crash.changes 2011-01-05 01:18:46.000000000 +0100 @@ -1,0 +2,86 @@ +Mon Jan 3 20:09:41 UTC 2011 - dmair@novell.com + +- Update to 5.1.1 + o Fix for the potential to miss tasks when walking the pid_hash + table in 2.6.24 and later kernels. Without the patch, the task + will simply not be seen in the gathered task list. + + o Enhancement for the ARM architecture's "bt" command to print + out the user space register set for tasks entering the kernel + via the syscall entry point. + + o Rework of the handling of "set" commands that are put in + .crashrc files so that only the following options are resolved + prior to session initialization: silent, console, core, edit, + namelist, and zero_excluded. All others are resolved + immediately after session initialization is complete. + Accordingly, the use of "set -c <cpu>", "set -p", + "set -a [task|pid]" and set [pid|task]" are now acceptable + .crashrc commands. + + o The entering of "set -v" in a .crashrc file would cause an + immediate segmentation violation. The "set" command rework + above defers the command until session initialization is + complete. + + o The entering of "set dumpfile <filename>" in a .crashrc file + would cause a fatal "seek" error during session initalization + with most most dumpfile types, so the "dumpfile" option has + been removed from the "set" command. + + o The execution of "alias" commands from a .crashrc file used to + be performed immediately; that behavior has been changed so + that they are executed immediately after session initialization + is complete. + + o Enhancement of the "repeat" command to allow command aliases. + + o Fix for running "kmem -s" on a live system if an offline cpu is + brought back online while the command is executing. Without + the patch, the online operation may cause a segmentation + violation. + + o Change the behavior of "bt -[tT]" to allow the command options + to be run on active tasks on live systems. Without the patch, + both command options would display the task data banner + followed by "(active)". + + o Fix for the ARM architecuture's "irq" command when run on + 2.6.36 and later kernels. Without the patch, the command fails + with the error message "irq: invalid kernel virtual address: 23 + type: irq_chip typename". The fix replaces the custom ARM IRQ + dumping function with the architecture-neutral version. + + o Introduced support for using /proc/kcore as an alternative + source of live memory to /dev/mem. Doing so allows vmalloc + memory access on 32-bit architectures when the underlying + mapped physical memory is in highmem, which is not allowed by + the /dev/mem driver. It would also be usable on systems that + are configured with CONFIG_STRICT_DEVMEM but still configured + with CONFIG_PROC_KCORE. To enforce the use of /proc/kcore, it + may be entered on the command line. + + o If a live crash session attempts to use /dev/mem as a live + memory source, and it is determined that the system is + configured with CONFIG_STRICT_DEVMEM, /proc/kcore will + automatically be tried as an alternative. + + o Fix to allow "/dev/crash" to be entered on the command line for + live sessions. Because it is used automatically if it exists, + it is never necessary to enter it on the command line. However, + if it is used, without the patch, the session fails during + initializaion with the error message "crash: /dev/crash: No + such file or directory" if the crash.ko driver is a module, or + "crash: /dev/crash: not a supported file format" if the driver + is built into the kernel. + + o Fix for the ARM "bt" command to address the issue behind faulty + warning messages that indicate "WARNING: UNWIND: unsupported + personality routine". + + o Fix for the ARM "bt" command to address the issue behind faulty + warning messages that indicate "bt: WARNING: UNWIND: cannot + find index for <address>". + + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- crash-5.1.0.tar.gz New: ---- crash-5.1.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ crash.spec ++++++ --- /var/tmp/diff_new_pack.tl2wZZ/_old 2011-01-07 13:57:59.000000000 +0100 +++ /var/tmp/diff_new_pack.tl2wZZ/_new 2011-01-07 13:57:59.000000000 +0100 @@ -1,7 +1,7 @@ # -# spec file for package crash (Version 5.1.0) +# spec file for package crash (Version 5.1.1) # -# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ # norootforbuild -%define crash_version 5.1.0 +%define crash_version 5.1.1 %define whitepaper_version 2003 %define scripts_version 2008-02-08 ++++++ crash-5.1.0.tar.gz -> crash-5.1.1.tar.gz ++++++ crash/crash-5.1.0.tar.gz /mounts/work_src_done/STABLE/crash/crash-5.1.1.tar.gz differ: byte 5, line 1 ++++++ crash-compressed-booted-kernel ++++++ --- /var/tmp/diff_new_pack.tl2wZZ/_old 2011-01-07 13:58:00.000000000 +0100 +++ /var/tmp/diff_new_pack.tl2wZZ/_new 2011-01-07 13:58:00.000000000 +0100 @@ -6,7 +6,7 @@ --- a/filesys.c +++ b/filesys.c -@@ -512,6 +512,8 @@ static int +@@ -523,6 +512,8 @@ static int find_booted_kernel(void) { char kernel[BUFSIZE]; @@ -15,7 +15,7 @@ char buffer[BUFSIZE]; char **searchdirs; int i, preferred, wrapped; -@@ -541,7 +543,8 @@ find_booted_kernel(void) +@@ -552,7 +543,8 @@ find_booted_kernel(void) searchdirs = build_searchdirs(CREATE, &preferred); @@ -25,7 +25,7 @@ if (!searchdirs[i]) { if (preferred && !wrapped) { wrapped = TRUE; -@@ -561,18 +564,37 @@ find_booted_kernel(void) +@@ -572,18 +564,37 @@ find_booted_kernel(void) sprintf(kernel, "%s%s", searchdirs[i], dp->d_name); if (mount_point(kernel) || @@ -66,7 +66,7 @@ } closedir(dirp); } -@@ -581,20 +603,23 @@ find_booted_kernel(void) +@@ -592,20 +603,23 @@ find_booted_kernel(void) build_searchdirs(DESTROY, NULL); if (found) { @@ -98,7 +98,7 @@ return FALSE; --- a/defs.h +++ b/defs.h -@@ -3417,6 +3417,8 @@ void dump_symbol_table(void); +@@ -3633,6 +3417,8 @@ void dump_symbol_table(void); void dump_struct_table(ulong); void dump_offset_table(char *, ulong); int is_elf_file(char *); @@ -109,7 +109,7 @@ int is_shared_object(char *); --- a/symbols.c +++ b/symbols.c -@@ -2643,6 +2643,33 @@ int is_gzip_file(const char *file) +@@ -2834,6 +2643,33 @@ int is_gzip_file(const char *file) } /* ++++++ crash-compressed-kernel ++++++ --- /var/tmp/diff_new_pack.tl2wZZ/_old 2011-01-07 13:58:00.000000000 +0100 +++ /var/tmp/diff_new_pack.tl2wZZ/_new 2011-01-07 13:58:00.000000000 +0100 @@ -44,7 +44,7 @@ --- a/defs.h +++ b/defs.h -@@ -313,6 +313,8 @@ struct program_context { +@@ -320,6 +313,8 @@ struct program_context { char *prompt; /* this program's prompt */ unsigned long long flags; /* flags from above */ char *namelist; /* linux namelist */ @@ -53,7 +53,7 @@ char *dumpfile; /* dumpfile or /dev/kmem */ char *live_memsrc; /* live memory driver */ char *system_map; /* get symbol values from System.map */ -@@ -3408,6 +3410,7 @@ void dump_struct_table(ulong); +@@ -3632,6 +3410,7 @@ void dump_struct_table(ulong); void dump_offset_table(char *, ulong); int is_elf_file(char *); int is_kernel(char *); @@ -63,7 +63,7 @@ int is_system_map(char *); --- a/filesys.c +++ b/filesys.c -@@ -590,6 +590,7 @@ find_booted_kernel(void) +@@ -601,6 +590,7 @@ find_booted_kernel(void) if (CRASHDEBUG(1)) fprintf(fp, "find_booted_kernel: found: %s\n", pc->namelist); @@ -73,7 +73,7 @@ } --- a/kernel.c +++ b/kernel.c -@@ -3837,10 +3837,10 @@ display_sys_stats(void) +@@ -3884,10 +3837,10 @@ display_sys_stats(void) if (pc->system_map) { fprintf(fp, " SYSTEM MAP: %s\n", pc->system_map); fprintf(fp, "DEBUG KERNEL: %s %s\n", @@ -88,7 +88,7 @@ if (pc->debuginfo_file) --- a/main.c +++ b/main.c -@@ -339,6 +339,7 @@ main(int argc, char **argv) +@@ -343,6 +339,7 @@ main(int argc, char **argv) * Take the kernel and dumpfile arguments in either order. */ while (argv[optind]) { @@ -96,7 +96,7 @@ if (is_remote_daemon(argv[optind])) { if (pc->flags & DUMPFILE_TYPES) { -@@ -351,21 +352,28 @@ main(int argc, char **argv) +@@ -361,21 +352,28 @@ main(int argc, char **argv) continue; } @@ -135,7 +135,7 @@ --- a/symbols.c +++ b/symbols.c -@@ -61,7 +61,7 @@ static void symname_hash_init(void); +@@ -60,7 +61,7 @@ static void symname_hash_init(void); static void symname_hash_install(struct syment *); static struct syment *symname_hash_search(char *); static void gnu_qsort(bfd *, void *, long, unsigned int, asymbol *, asymbol *); @@ -144,7 +144,7 @@ static int separate_debug_file_exists(const char *, unsigned long, int *); static int store_module_kallsyms_v1(struct load_module *, int, int, char *); static int store_module_kallsyms_v2(struct load_module *, int, int, char *); -@@ -161,6 +161,14 @@ symtab_init(void) +@@ -162,6 +161,14 @@ symtab_init(void) if (file_elf_version(pc->namelist) == EV_DWARFEXTRACT) pc->flags |= KERNTYPES; @@ -159,7 +159,7 @@ if (pc->flags & SYSMAP) { bfd_map_over_sections(st->bfd, section_header_info, VERIFY_SECTIONS); -@@ -184,7 +192,7 @@ symtab_init(void) +@@ -185,7 +192,7 @@ symtab_init(void) */ if (!(LKCD_KERNTYPES()) && !(bfd_get_file_flags(st->bfd) & HAS_SYMS)) { @@ -168,7 +168,7 @@ no_debugging_data(FATAL); } -@@ -235,7 +243,7 @@ symtab_init(void) +@@ -236,7 +243,7 @@ symtab_init(void) * /usr/lib/debug/boot (since we know it's a Red Hat kernel) */ static int @@ -177,7 +177,7 @@ { int i, exists, found; asection *sect; -@@ -270,16 +278,19 @@ check_gnu_debuglink(bfd *bfd) +@@ -271,16 +278,19 @@ check_gnu_debuglink(bfd *bfd) error(NOTE, "gnu_debuglink file: %s\ncrc32: %lx\n", contents, crc32); @@ -201,7 +201,7 @@ for (i = strlen(dirname)-1; i >= 0; i--) { -@@ -384,13 +395,15 @@ check_gnu_debuglink(bfd *bfd) +@@ -385,13 +395,15 @@ check_gnu_debuglink(bfd *bfd) reset_bfd: @@ -224,7 +224,7 @@ FREEBUF(contents); FREEBUF(dirname); -@@ -459,17 +472,17 @@ no_debugging_data(int error_type) +@@ -460,17 +472,17 @@ no_debugging_data(int error_type) switch (error_type) { case INFO: @@ -245,7 +245,7 @@ clean_exit(1); } } -@@ -2593,27 +2606,148 @@ is_elf_file(char *s) +@@ -2795,27 +2606,148 @@ is_elf_file(char *s) } /* @@ -401,7 +401,7 @@ if (!STRNEQ(eheader, ELFMAG) || eheader[EI_VERSION] != EV_CURRENT) return FALSE; -@@ -2697,7 +2831,35 @@ is_kernel(char *file) +@@ -2905,7 +2831,35 @@ is_kernel(char *file) } bailout: ++++++ crash-crosscrash-hint.diff ++++++ --- /var/tmp/diff_new_pack.tl2wZZ/_old 2011-01-07 13:58:00.000000000 +0100 +++ /var/tmp/diff_new_pack.tl2wZZ/_new 2011-01-07 13:58:00.000000000 +0100 @@ -15,7 +15,7 @@ --- a/tools.c +++ b/tools.c -@@ -4674,7 +4674,12 @@ machine_type_mismatch(char *file, char * +@@ -4690,7 +4674,12 @@ machine_type_mismatch(char *file, char * fprintf(fp, " crash utility: %s\n", MACHINE_TYPE); fprintf(fp, " %s: %s%s%s\n\n", file, e_machine, alt ? " or " : "", alt ? alt : ""); ++++++ crash-make-emacs-default.diff ++++++ --- /var/tmp/diff_new_pack.tl2wZZ/_old 2011-01-07 13:58:00.000000000 +0100 +++ /var/tmp/diff_new_pack.tl2wZZ/_new 2011-01-07 13:58:00.000000000 +0100 @@ -4,7 +4,7 @@ --- a/main.c +++ b/main.c -@@ -890,12 +890,6 @@ setup_environment(int argc, char **argv) +@@ -921,12 +890,6 @@ setup_environment(int argc, char **argv) pc->flags |= READLINE; pc->editing_mode = "no_mode"; @@ -17,7 +17,7 @@ /* * Resolve $HOME .rc file first, then the one in the local directory. -@@ -945,7 +939,7 @@ setup_environment(int argc, char **argv) +@@ -976,7 +939,7 @@ setup_environment(int argc, char **argv) } if (STREQ(pc->editing_mode, "no_mode")) ++++++ crash-sles9-time.patch ++++++ --- /var/tmp/diff_new_pack.tl2wZZ/_old 2011-01-07 13:58:00.000000000 +0100 +++ /var/tmp/diff_new_pack.tl2wZZ/_new 2011-01-07 13:58:00.000000000 +0100 @@ -16,7 +16,7 @@ --- a/defs.h +++ b/defs.h -@@ -571,6 +571,7 @@ struct kernel_table { +@@ -577,6 +571,7 @@ struct kernel_table { ulong p2m_missing; } pvops_xen; int highest_irq; @@ -24,7 +24,7 @@ }; /* -@@ -4631,6 +4632,13 @@ extern struct lkcd_environment *lkcd; +@@ -4905,6 +4632,13 @@ extern struct lkcd_environment *lkcd; #endif /* LKCD_COMMON */ @@ -53,7 +53,7 @@ if (symbol_exists("__per_cpu_offset")) { if (LKCD_KERNTYPES()) i = get_cpus_possible(); -@@ -4003,7 +4009,7 @@ get_uptime(char *buf, ulonglong *j64p) +@@ -4022,7 +4009,7 @@ get_uptime(char *buf, ulonglong *j64p) if (symbol_exists("jiffies_64")) { get_symbol_data("jiffies_64", sizeof(ulonglong), &jiffies_64); @@ -62,7 +62,7 @@ wrapped = (jiffies_64 & 0xffffffff00000000ULL); if (wrapped) { wrapped -= 0x100000000ULL; -@@ -4506,6 +4512,7 @@ no_cpu_flags: +@@ -4532,6 +4512,7 @@ no_cpu_flags: fprintf(fp, " p2m_top: %lx\n", kt->pvops_xen.p2m_top); fprintf(fp, " p2m_top_entries: %d\n", kt->pvops_xen.p2m_top_entries); fprintf(fp, " p2m_missing: %lx\n", kt->pvops_xen.p2m_missing); @@ -72,7 +72,7 @@ /* --- a/task.c +++ b/task.c -@@ -3508,6 +3508,12 @@ start_time_timespec(void) +@@ -3511,6 +3508,12 @@ start_time_timespec(void) default: break; } @@ -85,7 +85,7 @@ tt->flags |= NO_TIMESPEC; -@@ -3540,6 +3546,11 @@ convert_start_time(ulonglong start_time, +@@ -3543,6 +3546,11 @@ convert_start_time(ulonglong start_time, ulong tmp1, tmp2; ulonglong wrapped; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org