[PATCH v3 0/2] Fix /proc/*/stat parsing

Martin Kletzander posted 2 patches 2 years, 4 months ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/cover.1637660707.git.mkletzan@redhat.com
src/libvirt_private.syms              |   1 +
src/qemu/qemu_driver.c                |  34 ++-----
src/util/virprocess.c                 | 125 +++++++++++++++++---------
src/util/virprocess.h                 |  66 ++++++++++++++
tests/meson.build                     |   1 +
tests/virprocessstatdata/complex/stat |   2 +
tests/virprocessstatdata/simple/stat  |   1 +
tests/virprocessstattest.c            |  88 ++++++++++++++++++
8 files changed, 249 insertions(+), 69 deletions(-)
create mode 100644 tests/virprocessstatdata/complex/stat
create mode 100644 tests/virprocessstatdata/simple/stat
create mode 100644 tests/virprocessstattest.c
[PATCH v3 0/2] Fix /proc/*/stat parsing
Posted by Martin Kletzander 2 years, 4 months ago
While working on some polkit stuff I found out that we are inconsistent with the
way we parse /proc/*/stat files, so I added a new helper instead along with some
tests.  Unfortunately using it for the thing I wanted is not really viable in
the end, so it "violates" the Rule of three, but at least it does something
correctly.

v3:
- Added an enum with names for the fields of the file
- Made this not limited to linux as that was the way it worked in qemu before

v2:
- https://listman.redhat.com/archives/libvir-list/2021-November/msg00606.html
- Fixed open64 by just using virFileReadAllQuiet instead of g_file_get_contents
- Removed some leftover unused variables
- Still do not know why my cirrus builds fail

v1:
- https://listman.redhat.com/archives/libvir-list/2021-November/msg00580.html

Martin Kletzander (2):
  util: Add virProcessGetStat
  Use virProcessGetStat

 src/libvirt_private.syms              |   1 +
 src/qemu/qemu_driver.c                |  34 ++-----
 src/util/virprocess.c                 | 125 +++++++++++++++++---------
 src/util/virprocess.h                 |  66 ++++++++++++++
 tests/meson.build                     |   1 +
 tests/virprocessstatdata/complex/stat |   2 +
 tests/virprocessstatdata/simple/stat  |   1 +
 tests/virprocessstattest.c            |  88 ++++++++++++++++++
 8 files changed, 249 insertions(+), 69 deletions(-)
 create mode 100644 tests/virprocessstatdata/complex/stat
 create mode 100644 tests/virprocessstatdata/simple/stat
 create mode 100644 tests/virprocessstattest.c

-- 
2.34.0