[PATCH v3 00/19] contrib/elf2dmp: Improve robustness

Akihiko Odaki posted 19 patches 8 months, 3 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20240306-elf2dmp-v3-0-d74e6c3da49c@daynix.com
Maintainers: Viktor Prutyanov <viktor.prutyanov@phystech.edu>, Akihiko Odaki <akihiko.odaki@daynix.com>
There is a newer version of this series
MAINTAINERS                 |   1 +
contrib/elf2dmp/addrspace.h |   6 +-
contrib/elf2dmp/download.h  |   2 +-
contrib/elf2dmp/pdb.h       |   2 +-
contrib/elf2dmp/qemu_elf.h  |   2 +-
contrib/elf2dmp/addrspace.c |  63 ++++++++++-------
contrib/elf2dmp/download.c  |  12 ++--
contrib/elf2dmp/main.c      | 168 ++++++++++++++++++++------------------------
contrib/elf2dmp/pdb.c       |  61 +++++++---------
contrib/elf2dmp/qemu_elf.c  | 150 ++++++++++++++++++++++-----------------
contrib/elf2dmp/meson.build |   2 +-
11 files changed, 238 insertions(+), 231 deletions(-)
[PATCH v3 00/19] contrib/elf2dmp: Improve robustness
Posted by Akihiko Odaki 8 months, 3 weeks ago
elf2dmp sometimes fails to work with partially corrupted dumps, and also
emits warnings when sanitizers are in use. This series are collections
of changes to improve the situation.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
Changes in v3:
- Split patch "contrib/elf2dmp: Conform to the error reporting pattern".
  (Peter Maydell)
- Stated that the relevant value is little-endian in patch
  "contrib/elf2dmp: Use lduw_le_p() to read PDB".
- Added a message saying "Build it only for little endian hosts until
  they are fixed." for patch "contrib/elf2dmp: Build only for little
  endian host".
- Added patch "contrib/elf2dmp: Ensure phdrs fit in file" to fix
  https://gitlab.com/qemu-project/qemu/-/issues/2202 as patch
  "contrib/elf2dmp: Clamp QEMU note to file size" was not really fixing
  the crash.
- Link to v2: https://lore.kernel.org/r/20240305-elf2dmp-v2-0-86ff2163ad32@daynix.com

Changes in v2:
- Added patch "contrib/elf2dmp: Remove unnecessary err flags".
- Added patch "contrib/elf2dmp: Assume error by default".
- Added patch "contrib/elf2dmp: Conform to the error reporting pattern".
- Added patch "contrib/elf2dmp: Build only for little endian host".
- Added patch "contrib/elf2dmp: Use GPtrArray".
- Added patch "contrib/elf2dmp: Clamp QEMU note to file size".
- Changed error handling in patch "contrib/elf2dmp: Ensure segment fits
  in file" (Peter Maydell)
- Added a comment to fill_context() that it continues on failure.
  (Peter Maydell)
- Link to v1: https://lore.kernel.org/r/20240303-elf2dmp-v1-0-bea6649fe3e6@daynix.com

---
Akihiko Odaki (19):
      contrib/elf2dmp: Remove unnecessary err flags
      contrib/elf2dmp: Assume error by default
      contrib/elf2dmp: Continue even contexts are lacking
      contrib/elf2dmp: Change pa_space_create() signature
      contrib/elf2dmp: Fix error reporting style in addrspace.c
      contrib/elf2dmp: Fix error reporting style in download.c
      contrib/elf2dmp: Fix error reporting style in pdb.c
      contrib/elf2dmp: Fix error reporting style in qemu_elf.c
      contrib/elf2dmp: Fix error reporting style in main.c
      contrib/elf2dmp: Always check for PA resolution failure
      contrib/elf2dmp: Always destroy PA space
      contrib/elf2dmp: Ensure segment fits in file
      contrib/elf2dmp: Use lduw_le_p() to read PDB
      contrib/elf2dmp: Use rol64() to decode
      MAINTAINERS: Add Akihiko Odaki as a elf2dmp reviewer
      contrib/elf2dmp: Build only for little endian host
      contrib/elf2dmp: Use GPtrArray
      contrib/elf2dmp: Clamp QEMU note to file size
      contrib/elf2dmp: Ensure phdrs fit in file

 MAINTAINERS                 |   1 +
 contrib/elf2dmp/addrspace.h |   6 +-
 contrib/elf2dmp/download.h  |   2 +-
 contrib/elf2dmp/pdb.h       |   2 +-
 contrib/elf2dmp/qemu_elf.h  |   2 +-
 contrib/elf2dmp/addrspace.c |  63 ++++++++++-------
 contrib/elf2dmp/download.c  |  12 ++--
 contrib/elf2dmp/main.c      | 168 ++++++++++++++++++++------------------------
 contrib/elf2dmp/pdb.c       |  61 +++++++---------
 contrib/elf2dmp/qemu_elf.c  | 150 ++++++++++++++++++++++-----------------
 contrib/elf2dmp/meson.build |   2 +-
 11 files changed, 238 insertions(+), 231 deletions(-)
---
base-commit: bfe8020c814a30479a4241aaa78b63960655962b
change-id: 20240301-elf2dmp-1a6a551f8663

Best regards,
-- 
Akihiko Odaki <akihiko.odaki@daynix.com>