Back to crash PTS page

Accepted crash 7.2.9-1 (source amd64) into unstable



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Thu, 03 Dec 2020 09:53:49 -0700
Source: crash
Binary: crash crash-dbgsym
Architecture: source amd64
Version: 7.2.9-1
Distribution: unstable
Urgency: medium
Maintainer: Troy Heber <troyh@debian.org>
Changed-By: Troy Heber <troyh@debian.org>
Description:
 crash      - kernel debugging utility, allowing gdb like syntax
Closes: 976195
Changes:
 crash (7.2.9-1) unstable; urgency=medium
 .
   * Patch from Sebastian Andrzej Siewior <sebastian@breakpoint.cc>: The crash
     project moved recently to github. The attached patch updates the
     information within the package. It also adds a watch file which points to
     the latest release (closes: #976195)
 .
   * Fix for an ARM64 gcc-10 compilation error.  Without the patch, the build
     of the embedded gdb module fails with an error message that indicates
     "multiple definition of 'tdesc_aarch64'".
 .
   * Fix for the "log" command.  Without the patch, the command's output may be
     truncated, ending with the error message "log: invalid log_buf entry
     encountered".
 .
   * Fix to allow the translation of ARM64 FIXMAP addresses located in the
     virtual memory region between the end of the vmalloc region and the
     beginning of the vmemmap region.  Without the patch, reads of virtual
     addresses within that region are not recognized properly and will fail.
 .
   * Introduction of a new "extend -s" option, which shows all available shared
     object extension modules that are located in the directories that are part
     of the normal search path that is used when a shared object is loaded
     without a fully-qualified pathname.
 .
   * Fix for the "bpf -m|-M" options on Linux 5.3 and later kernels that
     contain commit 3539b96e041c06e4317082816d90ec09160aeb11, titled "bpf:
     group memory related fields in struct bpf_map_memory".  Without the patch,
     the options prints "(unknown)" for MEMLOCK and UID.
 .
   * Enhancement to the "bpf -p|-P" options to display the eBPF program name
     string.
 .
   * Fix for reading compressed kdump dumpfiles from systems with physical
     memory located at extraordinarily high addresses.  In a system with a
     physical address range from 0x602770ecf000 to 0x6027ffffffff, the crash
     utility fails during session initialization due to an integer overflow,
     ending with the error message "crash: vmlinux and vmcore do not match!".
 .
   * Enhancement of the "struct -r" option to support the raw memory display of
     a single data structure member.  Without the patch, the option only
     supported the raw display of a complete data structure.
 .
   * Modify the display behavior of the "struct -r" option so as to scale the
     minimum display size from the size of a per-architecture long (32-bits or
     64-bits) down to 8-bits, 16-bits or 32-bits when the requested size is
     equal to one of the smaller sizes.
 .
   * Introduce a new ARM64 "--machdep vabits_actual=<value>" command line
     option for Linux 5.4 and later dumpfiles, which require the kernel's
     dynamically-determined "vabits_actual" value for virtual address
     translation.  Without the patch, the crash session fails during
     initialization with the error message "crash: cannot determine
     VA_BITS_ACTUAL".  This option will become unnecessary when the proposed
     TCR_EL1.T1SZ vmcoreinfo entry is incorporated into the kernel.
 .
   * Fix for "kmem -[sS]" options on Linux 4.14 and later kernels built with
     CONFIG_SLAB_FREELIST_HARDENED enabled. Without the patch, there will error
     messages of the type "kmem: <cache name> slab: <address> invalid
     freepointer: <obfuscated address>" for caches created during SLUB
     bootstrap, as they are likely to have s->random == 0.
 .
   * If readmem() receives a user-space address in a page that has been swapped
     to the zswap compressed swap cache, an attempt will be made to find and
     decompress the page.
 .
   * Fix for the "mount -n [pid|task]" option when running on a live system.
     Without the patch, if the [pid|task] has been created since the last
     internal task table refresh, the command fails with the error message
     "mount: invalid task or pid value: <value>".
 .
   * Introduction of the "log -T" option, which translates the leading
     timestamp value of each message into human readable format.
 .
   * When kernels are built with LLVM, the names of many symbols may be
     appended with an ".llvm.<number>" string.  As a result, commands such as
     "irq" fail with the error message irq: neither irq_desc, _irq_desc,
     irq_desc_ptrs or irq_desc_tree symbols exist".  This patch adds the
     LLVM-generated string to the other strings that are stripped from symbols
     before they are stored.
 .
   * Prepare for the introduction of ARM64 8.3 Pointer Authentication as
     in-kernel feature.  The value of CONFIG_ARM64_KERNELPACMASK will be
     exported as a vmcoreinfo entry, and will be used with text return
     addresses on the kernel stack.
 .
   * Several fixes for ARM64 kernels:
     (1) Linux kernel patch "arm64: mm: Introduce vabits_actual"
         introduced "physvirt_offset", which is not equal to
         (PHYS_OFFSET - PAGE_OFFSET) when KASLR is enabled.
         physvirt_offset is caculated in arch/arm64/mm/init.c
         before memstart_addr (PHYS_OFFSET) is randomized.  Let
         arm64_VTOP() and arm64_PTOV() use physvirt_offset instead,
         whose default value is set to (phys_offset - page_offset)
     (2) For ARM64 RAM dumps without any vmcoreinfo and KASLRpassed as
         argument, " _stext_vmlinux" is not set.  This causes incorrect
         calculation of vmalloc_start with VA_BITS_ACTUAL.
     (3) For ARM64 RAM dumps For ramdumps without vmcoreinfo, get
         CONFIG_ARM64_VA_BITS from in-kernel config. Without this,
         vmemmap size is calculated incorrectly.
     (4) Fix the vmemmap_start to match with what the kernel uses.
 .
   * Replace people.redhat.com references with github equivalents.
 .
   * Implement support for user-space zram reads on x86_64 for recent
    Fedora kernel version 5.6.7-200.fc31.  The patch adds the following:
     (1) Redefine _PFN_BITS() macro to use MAX_POSSIBLE_PHYSMEM_BITS.
     (2) Fix to determine whether address_space.i_pages is a radix tree
         or an xarray.
     (3) Fix to not mistakenly select the "lzo" compressor when the
         kernel has used the default "lzo-rle" compressor.
     (4) Since zram may be provided as a kernel module, it would be
         necessary to load its debuginfo during the crash session;
         therefore perform the zram structure-size/member-offset
         initializations when first required instead of during
         session initialization.
     (5) Handle the zram_table_entry structure member name change
         from "value" to "flags".
 .
   * Add support for 1GB huge pages to "vtop" command on x86_64.  Without this
     patch, the command with a user virtual address corresponding to a 1GB huge
     page fails with the error message "vtop: seek error: physical address:
     <address>  type: "page table".
 .
   * Fix six spelling typos in help.c.
 .
   * Change tcr_el1_t1sz vmcoreinfo entry name to TCR_EL1_T1SZ according to
     kernel commit bbdbc11804ff ("arm64/crash_core: Export TCR_EL1.T1SZ in
     vmcoreinfo").
 .
   * Fix for a failure of calculating kaslr_offset due to an sadump format
     restriction.  Without the patch set, calculating kaslr_offset fails
     because it is based on the assumption that unused part of register values
     in the sadump format are always zero cleared.
 .
   * Support for huge holes in vmem of VMware VMSS dumpfiles.  Without the
     patch, if the hole is big enough, the multiplication by page size will
     truncate as it's operating on a uint32_t.
 .
   * Beautify and extend debug log for VMware VMSS dumpfiles.  Without the
     patch, the parser's debug log is missing a few line breaks as well as some
     crucial information, like control register dumps.
 .
   * Support core files with unusual layout that the ELF program headers do not
     directly follow the ELF header, such as vmcores generated with 'vmss2core'
     tool.
 .
   * Fix for the "log -T" option when crash is started with "--minimal" option.
     Without the patch, crash will spin at 100% and continuously crash at a
     divide by zero.  Disallow the option in minimal mode.
 .
   * Remove raw-view from s390bpf.  With kernel commit ecb1ff6833c4
     ("s390/debug: remove raw view"), the raw-view is no longer supported by
     s390 debug feature.  Since there has never been a single user of the
     raw-view, remove it from crash as well.
 .
   * Support s390 debug feature version 3, which was introduced by kernel
     commit 0990d836cecb ("s390/debug: debug feature version 3").
 .
   * Basic support for PaX's split module layout.  PaX and grsecurity kernels
     split module memory into dedicated r/x and r/w mappings using '*_rw' and
     '*_rx' named member variables in 'struct module'.  To add basic support
     for such kernels, detect the split layout by testing for the corresponding
       structure members and use these instead.
 .
   * Fix for the "kmem -i" option on Linux 5.9-rc1 and later kernels that
     contain commit 1008fe6dc36d ("block: remove the all_bdevs list").  Without
     the patch, the option fails halfway with the error message 'kmem: cannot
     resolve: "all_bdevs"'.
 .
   * Fix for the "irq -a" option on Linux 4.3 or later kernels that contain
     commit 9df872faa7e1 ("genirq: Move field 'affinity' from irq_data into
     irq_common_data").  Without the patch, the option cannot work with the
     message "irq: -a option not supported or applicable on this architecture
     or kernel".
 .
   * Append time zone explicitly to each output of date and time like "DATE:
     Thu Nov 29 06:44:02 JST 2018".
 .
   * Fixes for the "trace.so" extension module on Linux 5.6 and later kernels
     that contain commit: (1) 1c5eb4481e01 ("tracing: Rename trace_buffer to
     array_buffer") (2) 13292494379f ("tracing: Make struct ring_buffer less
     ambiguous") With the patch set, rename trace_buffer to array_buffer and
     ring_buffer to trace_buffer respectively.
 .
   * Fix for the "help -D" option listing uninteresting register entries for
     SADUMP dumpfiles.
 .
   * Fix for an initialization-time failure due to offset change of the name
     member of struct uts_namespace that might be introduced by linux-next
     commit 9a56493f6942 ("uts: Use generic ns_common::count").
 .
   * Add support for VMware guestdump (debug.guest) and vmem (debug.vmem)
     files.  To use, the companion debug.vmem file must be present in the same
     directory as the debug.guest file.
 .
   * Fix for the "extend" command on a PPC64 targeted x86_64 crash binary.
     Without the patch, the command on an x86_64 crash binary that can be used
     to analyze ppc64le dumpfiles fails with the error message "extend: <path
     to extension>: not an ELF format object".
 .
   * Fix for a failure to match arm/aarch64 ELF format of xendump file.
 .
   * Fix for the x86_64 "bt" command in cases where the pt_regs is not present
     in the stack.  Without the patch, the command can be incomplete with the
     error message 'bt: seek error: kernel virtual address: <address> type:
     "pt_regs"'.
 .
   * Fix for the crash.ko memory driver build with Linux 5.8 and later kernels
     that contain commit fe557319aa06 ("maccess: rename
     probe_kernel_{read,write} to copy_{from,to}_kernel_nofault").
     Additionally, due to commit 0493cb086353 ("maccess: unexport
     probe_kernel_write()"), writing kernel memory is no longer possible from a
     module.  Without this patch, build with the kernels fails with the error
     message "error: implicit declaration of function 'probe_kernel_write'".
 .
   * Fix for the memory_driver/Makefile for Linux 5.4 and later kernels that
     contain commit 7e35b42591c0 ("kbuild: remove SUBDIRS support").  Without
     the patch, the "make" command in the memory_driver directory doesn't build
     crash memory driver module as expected.
 .
   * Improvements of KASLR offset detection for QEMU, VMware VMSS and SADUMP
     dumpfiles: (1) Try all CPUs to provide CR3 and IDTR, because these
     registers on CPU0 can be not initialized or clobbered.  (2) Support
     5-level page table by using LA57 bit in CR4.  (3) Get KASLR offset by
     walking page tree.
 .
   * Fix for an initialization-time failure with QEMU dumpfiles with Linux
     5.8 and later x86_64 kernels that contain commit 9d06c4027f21 ("x86/entry:
     Convert Divide Error to IDTENTRY"), renamed divide_error handler to
     asm_exc_divide_error.
 .
   * Fix for several compiler warnings on 32-bit architectures when building
     with "make warn".  Without the patch, gcc generates the message "warning:
     format '%ld' expects argument of type 'long int', but argument 4 has type
     'uint64_t' [-Wformat=]" and similar ones as a result of crash commit
     3fedbee9bfbb ("vmware_guestdump: new input format").
 .
   * Speed up session initialization by avoiding unnecessary processing in the
     stkptr_to_task() function when sp is 0 on some architectures.  Without the
     patch, as it runs through each task's stack to find whether the given
     address is in its range, on a system with about
     1500 CPUs and 165k running tasks, it takes about a day to finish session
     initialization.  With the patch applied, it only takes about 5-10 minutes.
Checksums-Sha1:
 eebfc77a8eaa03749f064a38c058439d622f41d4 1929 crash_7.2.9-1.dsc
 dbf6589d64f2b6ad329ab821c4fdaff4ebf4ffb7 32266851 crash_7.2.9.orig.tar.gz
 4f74e339f5584fae74d1f46341823e219dc8a291 115664 crash_7.2.9-1.debian.tar.xz
 5812fe264c0ecfdb9c7f77b0ac3112aa93f81e21 11790980 crash-dbgsym_7.2.9-1_amd64.deb
 f2ebd7643a4b3fdcc0f702f933da98fd12b9414b 6619 crash_7.2.9-1_amd64.buildinfo
 60e210d5cbaa0bd5bfc0262576224cac5c2b1f5e 2949596 crash_7.2.9-1_amd64.deb
Checksums-Sha256:
 d0e9e8ff0eeb188764d7b6990f16037d86c936a42cac2ca8a52177cd981155c5 1929 crash_7.2.9-1.dsc
 10362b59f9dba43b77ae2f2378f6e76aa6e0db987d34303408403cd174e00526 32266851 crash_7.2.9.orig.tar.gz
 90a3d3b96513ca79546444fd81c02a1a8e434f937997e035c799411a78c93315 115664 crash_7.2.9-1.debian.tar.xz
 531fe040949f3f7b21fc6fdf8d6277119a5686036e65f934fdd717bdcb9241f2 11790980 crash-dbgsym_7.2.9-1_amd64.deb
 aa99fb387815b93a0c8ef7df7d7b069667bc87229d3d17afc36261ee6550abf2 6619 crash_7.2.9-1_amd64.buildinfo
 86095053ecbacb203fae2021bf96a810c05ab41b5998276beefc1e9c7a1e4ed4 2949596 crash_7.2.9-1_amd64.deb
Files:
 1afa6f788ad90660187b0b81541acf90 1929 utils optional crash_7.2.9-1.dsc
 fbb093a6e8387ea7964cc3abe3c18330 32266851 utils optional crash_7.2.9.orig.tar.gz
 a09a674711dab6dea4e23d7584509ec3 115664 utils optional crash_7.2.9-1.debian.tar.xz
 c750f3d205a221a92fca875c84ce11eb 11790980 debug optional crash-dbgsym_7.2.9-1_amd64.deb
 81b860287733759c9d30d476c12d029f 6619 utils optional crash_7.2.9-1_amd64.buildinfo
 741948bd7d7727c2c55b98f84c384ccc 2949596 utils optional crash_7.2.9-1_amd64.deb

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEPdPUPs0+tNeF/HYE23wDYLLLZZcFAl/Oi+IACgkQ23wDYLLL
ZZfhZxAAgfO23eYYMngPqtLu6loxuSov2yhQovc4Q5WshJh5yVbEpdp9epzJqldf
iYcgCKQBGaFUOWE5pK8eSRnA6NxzO9q+MtmhcOivncsdEj2DIoMdO2O9Es62xY63
OAEK8BvsQ8uFsZPLe4s1H44PBhXsrZMt5FT8ITODhxp5mOTKO4fkaK6Nz/44HWHM
lhBBvlTSSx8wIV3Tv0eqb0te45x2RQe7ohj48Xu9Bs4XwZJkBhd0mEXiZ44PqCpz
2VEyXcvCqKfXv25PEhkMgY7nTswTsSPHjpJ/Q1PyaCWJjnqymZ1bv/zGWRepVAfr
cZ3ckZu2G4uPUiuG/lAGCZ0GXNGqTi7LhITEVVufXAW2VW3+FtZ59X3/MTmyGBE5
7oqfh3bxGYR4HLaQiGKXdfdD8fz90iXEL6o2I/nBv7JrM+BnJXgFqhV7uaRaQj1m
yU+JMHudiVePGKdwSGTmBDdyXkX6H2heYaZKNP5+iADSLhiDogK2fOpRpQ2bz6hN
7xuW2DuhepLjhZaR/UUlNHrV4EMerlPkJ6CHSBKk/fm9hUuQe2BjGl5eb+IqBYWK
ofOlga4RgCeqKxzng0zhFlpCt7irIH6q/b9fs/o9qwLWoaDKJIl3aH9dgG9+AlGo
sXYfcIGv7lEwN+Rw2AvDEvktFIY600ZgXOCBGYcAwyJxIS9Ccas=
=jHB7
-----END PGP SIGNATURE-----