[make-initrd] [PATCH v1 00/11] Add accounting feature
Alexey Gladkov
gladkov.alexey at gmail.com
Thu Jun 15 20:59:09 MSK 2023
Привет!
Я написал фичу для отладки initramfs. Фича добавляет в бэкграунде процесс
аккаунтинга, который запускается на самых ранних этапах загрузки и собирает
данные о процессах. Перед запуском системного init формируется отчёт по
интересующим критериям.
Фича предназначена для отладки в тестах. Я хочу поразбираться, кто тратит больше
всего времени или cpu/memory. А то сейчас очень профилировать очень сложно.
Получилось сложнее, чем обычный acct(2), потому что я хотел получать не только
comm процесса т.к. у шелльных скриптов это bash. Хотелось максимально поймать
полный cmdline выполняемой программы.
Alexey Gladkov (11):
feature/procacct: New feature to debug initramfs
feature/procacct: Use epoll
feature/procacct: Use default rcvbufsz
feature/procacct: Track more values
feature/procacct: Use msgtemplate instead of custom struct
feature/procacct: Use nonblocking per-call
feature/procacct: Add bpf helper
feature/procacct: Add accounting report
feature/procacct: Wait until procacct is initialized
feature/procacct: Make procacct optional
feature/procacct: Add to testing
Makefile.in | 10 +
configure.ac | 36 +
data/etc/rc.d/rc.sysexec | 12 +
data/etc/rc.d/rc.sysinit | 26 +-
features/debug-procacct/README.md | 3 +
features/debug-procacct/config.mk | 1 +
.../debug-procacct/data/bin/procacct-report | 117 ++++
.../data/etc/initrd/cmdline.d/procacct | 1 +
features/debug-procacct/rules.mk | 1 +
features/debug-procacct/src/Makefile.mk | 16 +
features/debug-procacct/src/procacct-bpf.c | 57 ++
features/debug-procacct/src/procacct.c | 634 ++++++++++++++++++
features/debug-procacct/src/procacct.h | 13 +
testing/packages-altlinux | 3 +-
testing/test-root-btrfs-subvol.cfg | 2 +-
testing/test-root-efi-partition.cfg | 2 +-
testing/test-root-efi-reqpartition.cfg | 2 +-
testing/test-root-luks+crypttab+noparam.cfg | 2 +-
testing/test-root-luks+lukskey-noparam.cfg | 2 +-
testing/test-root-luks+lukskey-plain.cfg | 2 +-
testing/test-root-luks+lukskey-raw.cfg | 2 +-
testing/test-root-luks-over-lvm.cfg | 2 +-
testing/test-root-luks-over-raid1.cfg | 2 +-
testing/test-root-luks.cfg | 2 +-
testing/test-root-lvm+luks.cfg | 2 +-
testing/test-root-lvm.cfg | 2 +-
testing/test-root-partition+usr.cfg | 2 +-
testing/test-root-partition.cfg | 2 +-
testing/test-root-pipeline.cfg | 2 +-
testing/test-root-raid1+raid5.cfg | 2 +-
testing/test-root-raid1-degraded.cfg | 2 +-
testing/test-root-raid1.cfg | 2 +-
testing/test-root-raid5.cfg | 2 +-
testing/test-root-sshfs-network-dhcp.cfg | 2 +-
testing/test-root-sshfs-network-static1.cfg | 2 +-
testing/test-root-zfs-partition.cfg | 2 +-
testing/testing-altlinux-local | 9 +
testing/testing-ks-initrd.cfg | 1 +
38 files changed, 955 insertions(+), 29 deletions(-)
create mode 100644 features/debug-procacct/README.md
create mode 100644 features/debug-procacct/config.mk
create mode 100755 features/debug-procacct/data/bin/procacct-report
create mode 100644 features/debug-procacct/data/etc/initrd/cmdline.d/procacct
create mode 100644 features/debug-procacct/rules.mk
create mode 100644 features/debug-procacct/src/Makefile.mk
create mode 100644 features/debug-procacct/src/procacct-bpf.c
create mode 100644 features/debug-procacct/src/procacct.c
create mode 100644 features/debug-procacct/src/procacct.h
--
2.33.8
More information about the Make-initrd
mailing list