Debian Package Tracker
Register | Log in
Subscribe

pcp

System level performance monitoring and performance management

Choose email to subscribe with

general
  • source: pcp (main)
  • version: 7.1.5-1
  • maintainer: PCP Development Team (DMD)
  • uploaders: Ken McDonell [DMD] – Nathan Scott [DMD]
  • arch: all any
  • std-ver: 4.7.2
  • VCS: Git (Browse, QA)
versions [more versions can be listed by madison] [old versions available from snapshot.debian.org]
[pool directory]
  • o-o-stable: 5.2.6-1
  • oldstable: 6.0.3-1.1
  • stable: 6.3.8-1
  • testing: 7.1.5-1
  • unstable: 7.1.5-1
versioned links
  • 5.2.6-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 6.0.3-1.1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 6.3.8-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 7.1.5-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
binaries
  • libpcp-archive1
  • libpcp-archive1-dev
  • libpcp-gui2
  • libpcp-gui2-dev
  • libpcp-import-perl
  • libpcp-import1
  • libpcp-import1-dev
  • libpcp-logsummary-perl
  • libpcp-mmv-perl
  • libpcp-mmv1
  • libpcp-mmv1-dev
  • libpcp-pmda-perl
  • libpcp-pmda3
  • libpcp-pmda3-dev
  • libpcp-trace2
  • libpcp-trace2-dev
  • libpcp-web1
  • libpcp-web1-dev
  • libpcp3
  • libpcp3-dev
  • libpcp4
  • libpcp4-dev
  • pcp (3 bugs: 0, 3, 0, 0)
  • pcp-conf
  • pcp-doc
  • pcp-export-pcp2elasticsearch
  • pcp-export-pcp2graphite
  • pcp-export-pcp2influxdb
  • pcp-export-pcp2json
  • pcp-export-pcp2spark
  • pcp-export-pcp2xlsx
  • pcp-export-pcp2xml
  • pcp-export-pcp2zabbix
  • pcp-export-zabbix-agent
  • pcp-gui
  • pcp-import-benchmarks (1 bugs: 0, 0, 1, 0)
  • pcp-import-collectl2pcp
  • pcp-import-ganglia2pcp
  • pcp-import-guidellm2pcp
  • pcp-import-iostat2pcp
  • pcp-import-mrtg2pcp
  • pcp-import-sar2pcp
  • pcp-import-sheet2pcp
  • pcp-pmda-infiniband
  • pcp-testsuite
  • pcp-zeroconf
  • python3-pcp
action needed
lintian reports 2 errors and 18 warnings high
Lintian reports 2 errors and 18 warnings about this package. You should make the package lintian clean getting rid of them.
Created: 2026-05-27 Last update: 2026-05-27 21:01
AppStream hints: 1 error and 1 warning for pcp-gui high
AppStream found metadata issues for packages:
  • pcp-gui: 1 error and 1 warning
You should get rid of them to provide more metadata about this software.
Created: 2018-06-04 Last update: 2026-02-23 04:00
Multiarch hinter reports 2 issue(s) normal
There are issues with the multiarch metadata for this package.
  • pcp-doc could be marked Multi-Arch: foreign
  • pcp-export-zabbix-agent could be marked Multi-Arch: same
Created: 2016-09-14 Last update: 2026-07-20 17:00
Does not build reproducibly during testing normal
A package building reproducibly enables third parties to verify that the source matches the distributed binaries. It has been identified that this source package produced different results, failed to build or had other issues in a test environment. Please read about how to improve the situation!
Created: 2025-12-05 Last update: 2026-07-20 17:00
version in VCS is newer than in repository, is it time to upload? normal
vcswatch reports that this package seems to have a new changelog entry (version 7.2.0-1, distribution unstable) and new commits in its VCS. You should consider whether it's time to make an upload.

Here are the relevant commit messages:
commit f0c99d89479d3d77833f87be633e32e7217adf8a
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 20 16:20:23 2026 +1000

    pcp-atop: fix systemd service for changed logdir path

commit 3b90369a6c6404145a99525455456714cee88264
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 20 13:49:25 2026 +1000

    build: prepare for next weeks pcp-7.2.0 release

commit 891a42a4ec6671419582e9309abe5b6262734786
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 20 13:48:58 2026 +1000

    docs: fix pcp-import-benchmarks description pluralism
    
    Resolves Debian bug #1142200

commit 776df2ca67bc117a98b00056ad60ff6424c0efc2
Merge: 3f35be65 d25126c9
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 20 13:31:39 2026 +1000

    Merge commit 'd25126c9c1731eb22c304d9e7af5c9404e1c7856' into htop-merge

commit d25126c9c1731eb22c304d9e7af5c9404e1c7856
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 20 13:31:39 2026 +1000

    Squashed 'vendor/github.com/htop-dev/htop/' changes from 1579d02a5e..d4297a41b2
    
    d4297a41b2 Extend man page to include a External Libraries section on libnl-3 / libnl-genl-3
    255b014c7a Merge pull request #2047 from ABHIRAMSHIBU/feature/zswap-meters
    fdf6309c2d Add zswap pool usage meters
    53207de160 Disable NetBSD build for now as their cdn sends partial files breaking the build consistently
    671df7975b Update version to 3.6.0-dev. Again.
    393b224603 Update Changelog, Release 3.5.2
    d0c5072686 Merge branch 'fix/issue-1982-systemdmeter-newline' of dengzhongyuan365-dev/htop
    eb9859a6f4 Merge pull request #2046 from winklemad/fix-reset-on-fork-flag
    4dc18e7c7e Scheduling: OR in SCHED_RESET_ON_FORK instead of ANDing it
    a97ad96d18 Add comment on why snprintf instead of xSnprintf (omit error handling)
    5d870936e3 Merge branch 'fix/issue-1991-trace-fork-error-feedback' of re2zero/htop
    f7e79f97f2 Merge branch 'fix-cpumeter-segfault' of fasterit/htop
    bf8cc6e85e Merge branch 'linux-zram' of eworm-de/htop
    bdf4ffc15e linux: fix reading zram values
    5839bca117 systemd: fix SystemdMeter parsing when falling back to systemctl show
    1ef42260c4 Merge pull request #2034 from BenBE/ci-sec-fix
    81ed8c1664 Merge pull request #2033 from crocidb/main
    73cf23cff8 Address review feedback from @Explorer09
    bf9d40f9d3 Don't persist credentials when cloning the repository for CI
    afd5974915 Unified indentation style
    ede50e5dd8 Replace apt-key by signed-by repo spec for clang
    b174af9b15 freebsd: unifying buffer/cache memory usage for all filesystem cache
    080461baa5 Use consistent CI job naming
    b233e88243 Update CI to use $(...) subshell syntax
    f137d5a736 Merge pull request #2028 from add-uos/main
    bcbebfe156 desktop: add trailing semicolon to Keywords and expand keyword list
    7ff5716515 Merge pull request #2010 from BenBE/remove-openvz
    90369a4912 Remove obsolete OpenVZ and VServer support
    287df38a19 Reduce default token permissions
    254da5566b Merge pull request #2027 from htop-dev/dependabot/github_actions/actions/checkout-7
    978b76e577 Bump actions/checkout from 6 to 7
    f85df099e1 Merge pull request #2026 from ugolnikovE/issue-1992
    f0d2b7e151 linux: add M_EPSS column (effective proportional set size)
    6f86c5f8e9 Housekeeping: Make count, start, ncol unsigned, removes lots of casting
    143147ebf1 Fix segfault when vCPUs are hot-added: resize AllCPUsMeter data->meters array on CPU count change
    e9518b3320 PgDown -> PgDn for consistency (introduced in 87c2f29a)
    3896cb87e6 Merge pull request #2021 from BenBE/sticky-follow
    87c2f29aa8 Introduce sticky_follow setting
    c05187cc69 Unfollow when moving cursor
    d66df1f567 Show error message when trace feature fails on fork
    98be31b2bd Merge pull request #2020 from BenBE/fork-exit-fixes
    99f456b83b Merge pull request #2019 from BenBE/openrc-bugfix
    dcee86f939 Avoid memory leak on error when listing open files
    81fcd80aaa Simplify interrupted waitpid handling
    6e833bc5e1 Properly terminate forked process for TraceScreen
    1dc64b55d9 Avoid running atexit handlers for forked children
    ca8e1c80e7 Split runlevel and service count queries
    224748653b Merge pull request #2017 from BenBE/security-process
    3a002219ce Merge pull request #1976 from natoscott/fix/macos-memory-used-calculation
    e7409e80e5 Skip displaying service counts if both values are missing
    b9f4aa0424 Use size_t for count tracking
    af145094f8 Refactor Row_printRate to scale units with a loop
    7709c12b42 Formalize security process
    3af3426923 Merge pull request #2015 from natoscott/fix/darwin-mach-port-leak
    76a0c21839 darwin: fix Mach port leak in DarwinProcess_scanThreads()
    ac2cdeeb56 Merge pull request #1999 from MatthewLavine/main
    2cc93218ec linux: resolve actual executable path for Flatpak processes
    008c621e67 Merge pull request #2008 from nikhilwankhedee/main
    a75e9011f9 Handle unavailable OOM scores as N/A
    af53de40ba darwin: fix used memory calculation to match Activity Monitor
    
    git-subtree-dir: vendor/github.com/htop-dev/htop
    git-subtree-split: d4297a41b285374336ae860afe5b5c16128f9f87

commit 3f35be653cc8849960c93eb458ecb17a93521940
Merge: f7668761 327acb76
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 20 13:22:17 2026 +1000

    Merge branch 'pcp-selinux-import'

commit f7668761a6ac2c9db497ab3ae7b0bb22089446c2
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 20 13:21:52 2026 +1000

    docs: otel QG, fix incorrect stray pcp2openmetrics reference
    
    Minor formatting fixes (don't use '&' as its special in html escape
    sequences, and informal).  Add a short note about the PMWEBAPI(3)
    opentelemetry exporting via /metrics API.

commit acbcb9b9fba675e893fbe19d592e6c5cc78a13d5
Merge: 19781879 8b4bb3ed
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 20 13:14:46 2026 +1000

    Merge branch 'otel-QG' of github.com:lmchilton/pcp into lmchilton-otel-QG

commit 19781879556216ab36eb6a5a0c1eb138a05281bc
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Sat Jul 18 08:12:07 2026 +1000

    qa/common.bpftrace: bpftrace PMDA needs even longer to start on vm03
    
    15sec was not enough, bump to 30sec and now qa/1721 is passing.

commit 81a89ff40dfc36bfcd2ef9716830466e5a57aeda
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Sat Jul 18 07:44:33 2026 +1000

    bpftrace PMDA: examples and QA
    
    Following feedback from Viktor Malík (the bfptrace maintainer @
    RedHat) over at https://github.com/performancecopilot/pcp/issues/2609
    the examples and QA have been reworked.
    
    1. a new script (Download) to download versions of these scripts from
       github and apply the Andreas Gerstmayr transformation to produce
       something the bpftrace PMDA can use
    2. package a version of biolatency.bt and runqlat.bt for each version
       of bpftrace that is known to github (currently 20 .. 26)
    3. update qa/1721 to pick the right version of the *.bt script
    4. update qa/1721 to expect either 4 or 5 tracepoints (not 3)
    5. remade qa/1721.out
    
    Thanks Viktor.

commit 327acb76c6d38cc0035e6111a9b51b16e1d4bd6b
Author: Nathan Scott <nathans@redhat.com>
Date:   Fri Jul 17 14:00:25 2026 +1000

    selinux: add pcp-import policy module for local context recording tools
    
    Add a new SELinux policy module (pcp-import) for PCP tools that operate
    in PM_CONTEXT_LOCAL mode without pmcd — loading DSO PMDAs directly and
    writing PCP archives via libpcp_import.  This covers pcp-atop and
    sysstat's sadc (with -O pcp), and provides a reusable pcp_import_t
    domain for future import tools.
    
    The pcp-import module is independent of the existing pcp-selinux
    package (which covers pmcd/pmlogger/pmproxy/pmie) and works when only
    pcp-libs is installed.  The sysstat_t domain from the base targeted
    policy is augmented via optional_policy when sysstat is installed.
    
    Rename PCP_IMPORT_DIR to PCP_IMPORTRUN_DIR for clarity (/run/pmimport
    status files) and add PCP_IMPORTLOG_DIR (/var/log, base directory for
    import tool archives).  pcp-atop uses PCP_IMPORTLOG_DIR/atop for its
    daily archives.
    
    New pcp-selinux-import RPM subpackage, weak-required by pcp-libs when
    selinux-policy-targeted is installed.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 4529a26eb4cb04c9359dd94dcd3e5e81c3f3a3a6
Author: Nathan Scott <nathans@redhat.com>
Date:   Fri Jul 17 09:58:34 2026 +1000

    chrony PMDA: review fixes, packaging, SELinux policy, and QA tests
    
    Code fixes (pmdachrony.python):
    - Broaden exception handling to catch OSError, ValueError, IndexError,
      AssertionError, and TimeoutExpired in addition to CalledProcessError
    - Add timeout=1 to subprocess.run() calls (well under pmcd 5s timeout)
    - Remove unused PMDA_FETCH_NOVALUES import
    - Fix typos: "refrence", "Resitual", "iInterval", "souces"
    - Fix pylint: use enumerate() instead of range(len())
    - Add CHRONYC env var override for chronyc path (enables QA testing)
    - Add set_user("chrony") for chronyd socket access, guarded for
      non-root and test contexts
    - Pre-populate instance domain on init to avoid "unknown instance"
      warning on first pmval fetch
    - Fix metric units: use dimensionless pmUnits for identifiers, strings,
      stratum, poll, reach, and ppm frequency values (not PM_COUNT_ONE)
    - Fix semantics: sources.last_rx and sources.reach use PM_SEM_INSTANT
    
    Man page (pmdachrony.1):
    - Remove stale "Copyright (c) 2014 Red Hat" from template
    - Add chronyc(1) and chronyd(8) to SEE ALSO
    
    SELinux (pcp.te):
    - Allow pcp_pmcd_t to execute chronyc_exec_t (optional policy)
    
    Packaging:
    - Add pcp-pmda-chrony to build/rpm/pcp.spec.in and redhat.spec
      (package declaration, file manifest, package list, preun, files)
    
    QA:
    - New test 1685: deterministic dbpmda test with fake chronyc and
      canned data using RFC 5737 documentation IPs (no PII)
    - New test 1686: Install/Remove integration test via pmcd
    - Add qa/chrony/ test data directory with fake chronyc script
    - Add chrony to qa/GNUmakefile and qa/GNUmakefile.install SUBDIRS
    - Add chrony to qa/common.filter (PMDA name, instance, PMNS filters)
    - Add chrony entries to qa/group
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 4ac53a1b138cc294b33dda24565999c763ec6a38
Merge: 36f9def6 cc1479ed
Author: Nathan Scott <nathans@redhat.com>
Date:   Thu Jul 16 16:36:03 2026 +1000

    Merge branch 'chrony' of github.com:jeffpc/pcp into jeffpc-chrony

commit 36f9def68e3b6333edd9407c91a03eaa1bae9e96
Merge: 7bd44703 59c9b221
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 16 09:06:03 2026 +1000

    Merge pull request #2656 from kmcdonell/wip
    
    packaging (Debian and tarball) and multiarch path fixups (Debian)

commit 59c9b2213326e474eaf4558dc30ba7646ab933a3
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 16 07:51:05 2026 +1000

    build/tar/postinstall.tail: tweak test for ldconfig -m option

commit 8aacd877b688931fff574165610873197421c1fc
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 16 07:24:31 2026 +1000

    libpcp*/src/install-dev: coderabbitai-suggested fixups
    
    1. one script and make others symlinks (hard links are not preserved by
       git apparently)
    2. harden the error checking in the script

commit 3b1019d7c9b977a2f0d9419558f327d204c266fb
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Wed Jul 15 19:38:28 2026 +1000

    debian packaging: fixups
    
    - /run/pmimport installed via tmpfiles, not packaged
    - pcp-dstat lintian changes

commit a8b0cf95d2a652ca96b9389e0625fb53e0082fdb
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Wed Jul 15 14:30:31 2026 +1000

    debian/control.pcp: fix Breaks: and Replaces: for libpcp-import2-dev
    
    Needs to refer to libpcp-import1-dev.

commit 40e1ac32beeb94ab4f770aa20fa860ed56daaa91
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Wed Jul 15 14:08:15 2026 +1000

    debian/pcp-htop.install: cull bogus etc/pcp/htop/* entries
    
    Correct usr/share/pcp/htop entries were already present.

commit de03719323c6d9050d74e0d066ee8183e920cba6
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Wed Jul 15 14:04:31 2026 +1000

    debian/pcp-export-zabbix-agent.install: match multipath renaming
    
    The Debian packaging ecosystem sees the zbxpcp.so DSO's below
    /usr/lib and wants to move 'em to the correct multipath directory.
    Make the pathnames glob-match the renamed paths, same as was done
    for all the libpcp<foo> libraries.

commit 903b5d3dd689c96552712cc0f88e50fe2001f006
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Wed Jul 15 13:58:45 2026 +1000

    Debian build: rework for multiarch changes
    
    Revert parts of commit 10f01ad75.
    
    Conditionally installing based on $DEB_HOST_MULTIARCH was wrong.
    Install into $PCP_LIB_DIR (e.g. /usr/lib) and let the Debian build
    ecosystem deal with the path renaming to install libraries below
    $PCP_LIB_DIR/$DEB_HOST_MULTIARCH.

commit 60b58ef841cd9bbf521c34856015c2c30f03eea1
Merge: a15c03af 7bd44703
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Wed Jul 15 12:10:23 2026 +1000

    Merge branch 'main' of https://github.com/performancecopilot/pcp

commit a15c03af8faa042c840d40b5f5051db3a6efeca1
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Wed Jul 15 10:47:17 2026 +1000

    src/libpcp*/src/install-dev: rework
    
    1. mv rather than cp, so we don't end up with turds in /usr/lib that are
       not part of any PCP package
    2. add -d (debug flag) to report key variable assignments
    3. expand coverage to include pkgconfig files that are also not where
       "sudo make install" puts them
    
    Note: all the 9 files are hard links to the same script, so realy only
          one set of changes here.

commit 8b4bb3edd33e2f8f62676400024bc2e7ab175f5c
Author: lmchilton <lauren.chilton26@gmail.com>
Date:   Wed Jul 8 11:05:51 2026 -0400

    New OpenTelemetry QG

commit 7bd44703feb840bd38f1a72ee49f08580e5d6f27
Author: Nathan Scott <nathans@redhat.com>
Date:   Tue Jul 14 16:32:00 2026 +1000

    build: drop /run and import.conf for pmimport debs

commit 103deb2a59a98198795cc1f4cd06f37ea26cc5d3
Author: Nathan Scott <nathans@redhat.com>
Date:   Tue Jul 14 11:04:11 2026 +1000

    ci/macos: pre-upgrade pkg-config to avoid brew bundle lock race
    
    brew bundle runs parallel installs (HOMEBREW_DOWNLOAD_CONCURRENCY=6)
    and the pkg-config upgrade races with python-setuptools install since
    both need the pkgconf cellar path, causing a lock conflict.  Upgrade
    pkg-config before brew bundle so it's already current.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 6d5e514b32c918a5e003ef5aa4f354b968778b2c
Merge: b8d356cd 230550e2
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Tue Jul 14 10:59:49 2026 +1000

    Merge branch 'main' of https://github.com/performancecopilot/pcp

commit 230550e29370ad77d77fa71b7c7ce1593d457557
Author: Nathan Scott <nathans@redhat.com>
Date:   Tue Jul 14 10:52:20 2026 +1000

    ci/macos: fix brew bundle race and Homebrew 6.x tap trust warnings
    
    The GitHub Actions macOS runner image has pre-installed third-party
    taps (aws/tap, hashicorp/tap, azure/bicep) and background brew
    upgrade processes that race with our brew bundle step.
    
    Replace the fixed sleep with a wait loop for background brew
    processes to finish, and untap unused third-party taps to avoid
    Homebrew 6.x tap trust warnings (HOMEBREW_NO_REQUIRE_TAP_TRUST
    is deprecated and will be removed).
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit c04675a2aa2936fa8d8ae33ddb248d137ce5c6a2
Author: Nathan Scott <nathans@redhat.com>
Date:   Tue Jul 14 10:25:18 2026 +1000

    qa/statsd: fix test 1713 broken by pminfo -e flag change
    
    The -e flag was repurposed from unused to --metadata-errors, which
    enters verify mode and suppresses normal fetch output.  Revert
    07.py back to utils.print_metric() to match the expected output.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 2bd16d1cf5ada81b2fb0214260303924a21dd075
Author: Nathan Scott <nathans@redhat.com>
Date:   Tue Jul 14 10:12:44 2026 +1000

    qa: add filtering for upstream-based man pages

commit 63f992375b737b2b22b858ba5b5dc2d0b0218991
Author: Nathan Scott <nathans@redhat.com>
Date:   Tue Jul 14 09:49:54 2026 +1000

    qa: fix up missed references to pcp-reboot-init shell script

commit b8d356cd70c0fb405f5aef8f8907153525dc7ae6
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Mon Jul 13 21:38:03 2026 +1000

    install-dev scripts for libraries
    
    Only for developer use to overlay "sudo make install" on top of a
    PCP installation.
    
    Needed some extra tweaks to handle path rewriting for multiarch on
    Debian ... package installs and make install were not putting the
    libpcp<foo>.so.N file in the same directory.

commit 4b62214b698ce3e76990e6faa81b561cb5c1bfb5
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Mon Jul 13 21:36:38 2026 +1000

    build/tar/postinstall.tail: tweak ldconfig test
    
    On FreeBSD 14.3 (vm06), ldconfig '-?' reports ...
    usage: ldconfig [-32] [-BRimr] [-f hints_file][directory | file ...]
    which needs a smarter grep to find the -m option.

commit 97ec2019399ffd3b305a28705951f8f6c6d808c6
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 13 14:49:24 2026 +1000

    pcp-summary: ensure zoneinfo displayed in local-context mode

commit 8b7f54b8721bf2eb50b144a365e77001571eb517
Merge: 4c6f41c0 5c112ff4
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 13 12:42:16 2026 +1000

    Merge branch 'pcp-atop-labels'

commit 4c6f41c00641d693fdeb1dc3a4f007ddb2728456
Merge: e1d037ce 97e256b4
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 13 12:42:10 2026 +1000

    Merge branch 'split-system-tools'

commit 5c112ff427235d92e49e02e4c2b5e6e313c85fed
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 13 11:09:48 2026 +1000

    pcp-atop: skip oversized context labels to avoid truncated JSON
    
    If a label name or value exceeds the local buffer size, pmsprintf
    would truncate it — potentially stripping a closing quote from a
    JSON string value and producing malformed JSON in the archive.
    Skip such labels rather than writing corrupt data.
    
    Addresses coderabbit finding on PR #2653.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit e1d037ceb41bc751c4626bf4422c22d59550bc80
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 13 10:44:05 2026 +1000

    docs: fix a couple of typos in docker PMDA help text

commit 361a673042895126a86c72fb28e8bafc7e94fc0e
Author: Nathan Scott <nathans@redhat.com>
Date:   Sat Jul 11 14:19:06 2026 +1000

    pcp-atop: fix double-compression of archive volumes in atop-daily
    
    The glob "$base".[0-9]* matched already-compressed .N.zst files
    (e.g., .0.zst matches because [0-9]* covers "0.zst").  These were
    renamed to .0.zst.tmp and re-compressed to .0.zst.zst.
    
    Skip files with .zst or .xz suffixes in the rename loop so only
    raw uncompressed volumes are staged for compression.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit a89b157b9424cd89ecb7320bf2e854dd307741a4
Author: Nathan Scott <nathans@redhat.com>
Date:   Fri Jul 10 15:05:11 2026 +1000

    libpcp_import, pcp-atop: write context labels into recorded archives
    
    Add rawwrite_init_labels() which writes an {"atop": true} creator
    label then copies all context-level labels from the live PMAPI context
    (hostname, domain, machineid, etc.) into the PMI archive via
    pmiPutLabel.
    
    Updated qa/1089 to verify atop creator label in recorded archive.
    
    Fixed pmiPutLabel to pass through already-valid JSON values (such
    as quoted strings, numbers, true/false/null) verbatim rather than
    double-quoting them.  Previously numbers became strings and quoted
    strings got escaped quotes.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 97e256b4ed93303494bedf44ae874a1f3a616cbb
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 8 16:35:35 2026 +1000

    packaging: split pcp-atop, pcp-dstat, pcp-htop into individual subpackages
    
    Create three new subpackages (pcp-atop, pcp-dstat, pcp-htop) so each
    tool can be installed independently with minimal dependencies.
    
    RPM: new packages depend only on pcp-libs (plus python3-pcp for dstat).
    pcp-system-tools now Requires all three for clean upgrades.  The dstat
    Provides/Obsoletes moves from pcp-system-tools to pcp-dstat.
    
    Debian: new packages use Breaks/Replaces pcp (<< 7.1.6) for clean file
    migration.  The main pcp package Recommends the new subpackages.  The
    dstat Conflicts/Provides/Replaces moves from pcp to pcp-dstat.
    
    Several pcp-* tools were not matched by the system-tools manifest
    pattern and were falling through to the base pcp package.  Add
    pcp-buddyinfo, pcp-meminfo, pcp-netstat, pcp-nfsiostat, pcp-ps,
    pcp-rocestat, pcp-slabinfo, pcp-vmstat and pcp-zoneinfo.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 257a410250ceea71e6fcc3055973f4bf73e77274
Author: Nathan Scott <nathans@redhat.com>
Date:   Tue Jul 7 08:35:10 2026 +1000

    build: enable aarch64 resctrl PMDA sub-package

commit c565f6fdb26b73e0b3d9cc17d927bc7affdf7484
Merge: 3ae9f1a8 9ed16e6c
Author: Nathan Scott <nathans@redhat.com>
Date:   Sun Jul 12 16:10:53 2026 +1000

    Merge branch 'pmda-python-typing'

commit 9ed16e6c5fd6b3151a8c9086a1433be7604496ec
Author: Nathan Scott <nathans@redhat.com>
Date:   Thu Jun 4 21:09:03 2026 +1000

    pcp.pmda: add type annotations to PMDA API
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 9b0c3b1040001f2d1f6ed286cceb574cd7cdab92
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 8 16:35:19 2026 +1000

    packaging: rename pcp-reboot-init script to reboot-init
    
    The pcp- prefix caused pcp --help to list reboot-init as a user-facing
    subcommand, but it is an internal service utility run at boot.  Rename
    the source directory and script to reboot-init so it installs as
    $PCP_BINADM_DIR/reboot-init.
    
    The systemd service file and man page retain the pcp-reboot-init name
    for system-wide visibility (pcp-reboot-init.service, pcp-reboot-init.1).
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 3ae9f1a87d942bd006168d1ed1e3768cea632bf6
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 8 09:37:24 2026 +1000

    qa: remake 1653 to include recent updates to metric units

commit deaf911e1069a77102bf6f759d44cfcdc9c02390
Author: Nathan Scott <nathans@redhat.com>
Date:   Tue Jul 7 08:49:58 2026 +1000

    qa: remake 1291 which has a units change with new atop code

commit 85ea8a8ffa2c8f28aaa8e041126041c1cf280632
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 17:22:01 2026 +1000

    pcp-atop: check rename() return when creating Latest folio (covscan)
    
    If rename(2) fails, clean up the temp file.  Coverity CID 504629.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 5475cc65e29dae91f0bdbccdcf2015a89b84c5f1
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 12:49:30 2026 +1000

    pcp-atop: zero new entries after realloc in acctphotoproc
    
    The realloc extending the exited-process array did not zero the new
    entries.  The memset in atop.c before acctphotoproc uses the old array
    length, so the extended portion has uninitialised memory.  This caused
    valgrind to flag a conditional jump on prestat.gpu.state in deviattask
    (qa/1080 failure).
    
    Zero the newly allocated portion immediately after realloc.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit c17590f3471c3838aec76cf18581fc7508045d1a
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 12:13:02 2026 +1000

    libpcp: accept PM_MODE_LIVE for PM_CONTEXT_LOCAL in pmSetMode
    
    pmSetMode unconditionally returned PM_ERR_MODE for PM_CONTEXT_LOCAL,
    even for PM_MODE_LIVE which is conceptually identical to what local
    context does.  This forced callers to special-case local context when
    all they needed was a live fetch.
    
    Merge the LOCAL case with HOST: accept PM_MODE_LIVE (same fields set),
    reject other modes.  Remove the PM_ERR_MODE workaround from pcp-atop
    fetch_metrics which is no longer needed.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 37005e17e9055685a967e684683ca587e22ce909
Merge: 8bcefdf5 3e34bcb2
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 12:01:23 2026 +1000

    Merge branch 'christianhorn-fix-pushdoc-path'

commit 3e34bcb2424ade53a3eef3900e9d9d76f84de0c5
Merge: 8bcefdf5 543cde97
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 12:01:00 2026 +1000

    Merge branch 'fix-pushdoc-path' of github.com:christianhorn/pcp into christianhorn-fix-pushdoc-path

commit 543cde97c03607ea83d2070a87d3d2eaf44f6af1
Author: Christian Horn <chorn@redhat.com>
Date:   Mon Jul 6 10:57:21 2026 +0900

    cleanup structure

commit 8bcefdf5884d69db49c903ad89d175ee05e91aa9
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 11:56:07 2026 +1000

    pcp-atop: fall back to local context when pmcd reconnect fails
    
    When pmReconnectContext fails and pcp-atop is on localhost, create a
    PM_CONTEXT_LOCAL with DSO PMDAs rather than silently dropping samples
    until pmcd returns.  Recording continues with reduced metrics (only
    what DSO PMDAs provide — no pmcd-specific metrics like pmcd.agent.*).
    
    Also handle PM_ERR_MODE from pmSetMode gracefully: local contexts do
    not support pmSetMode, so treat PM_ERR_MODE as benign rather than
    calling cleanstop.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 758444675c932e9811cd5ec3cf76b39cf4f4bb9c
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 11:53:19 2026 +1000

    pcp-atop: reconnect to pmcd on connection loss instead of exiting
    
    When pmFetch fails with PM_ERR_IPC, ECONNRESET, PM_ERR_TIMEOUT, or
    EPIPE (pmcd restarted or stopped), try pmReconnectContext() to restore
    the connection.  If reconnect fails, return -1 so the caller skips
    this sample and retries on the next interval rather than exiting.
    
    Previously, any fetch error other than PM_ERR_EOL called cleanstop(1),
    so restarting pmcd killed the recording service.
    
    Also fix photoproc.c to check fetch_metrics return value — a -1 return
    (connection lost) would leave result=NULL and crash.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 80962efb117b414b23bae92d74f11757e15e2d10
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 11:45:34 2026 +1000

    pcp-atop: update usage, man page and comments for archive (not folio)
    
    pcp-atop -w now writes PCP archives directly via libpcp_import, not
    pmlogger folios.  Update all user-facing references:
    
      atop.c: -w/-r usage strings say "archive" not "folio"
      pcp-atop.1: replace all "folio" with "archive" or "directory"
      various.c: update comment on the folio lookup paths (kept for
        backward compatibility with old pcp-atop folios)
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 86272836520df3e34563f9b1d55cae5f2ce1dbcf
Merge: dc102a4f 681b35f2
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 11:38:02 2026 +1000

    Merge branch 'main' of github.com:performancecopilot/pcp

commit dc102a4fac665f3fc4e40f31fc113fa6c727f328
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 11:37:25 2026 +1000

    pcp-atop: fix -w hang by removing pmNameInDom from write path
    
    rawwrite_put() called pmNameInDom() to resolve instance IDs to names
    for pmiAddInstance/pmiGetHandle.  pmNameInDom makes a synchronous RPC
    to pmcd, which blocks indefinitely when called from inside the fetch
    pipeline (pmcd's response is delayed or the socket state is confused).
    
    This caused pcp-atop -w to hang after the first sample when pmcd is
    running (HOST context).  Backtrace showed select() blocking in
    pmNameInDom -> __pmGetPDU inside rawwrite_put.
    
    Fix: use the numeric instance ID as a string for pmiAddInstance and
    pmiGetHandle, avoiding the pmcd round-trip entirely.  Instance names
    in the archive are numeric IDs rather than external names; this is a
    functional trade-off to eliminate the hang.  A future improvement can
    pre-cache instance names from the fetch_instances() calls that
    photoproc/photosyst already make.
    
    Also update qa/1266 to use pmafm Latest folio for archive access
    after -w (pcp-atop -w now creates a directory with a Latest folio
    rather than a flat archive).
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 9122cef8a5d1ca85eb153d2130e379350c67f24a
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jul 6 10:26:33 2026 +1000

    pcp-atop: write Latest folio for archive replay; fix qa/1089
    
    rawwrite_open() now creates a PCP folio (Latest) in the archive
    directory pointing to the current day's archive, following the pmlogger
    convention.  Written atomically via rename(2) of Latest.tmp so no
    reader sees interim content.
    
    rawarchive() now tries <dir>/Latest as a folio path when hunting for
    archives, so "pcp-atop -r <dir>" works transparently with the new
    direct-write archives (no pmlogger folio needed).
    
    qa/1089: replace pmafm on the old no-end.folio / end.folio paths with
    pmafm on the new Latest folio.  Drop pmcd.* metrics from the check
    (pcp-atop records hinv/kernel/proc metrics, not pmcd internals).
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 681b35f24c4aa2d880acaf6f78a6c3f96dad7abc
Merge: 97a76377 6a24a530
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Mon Jul 6 06:37:40 2026 +1000

    Merge pull request #2641 from christianhorn/add-denki-units
    
    add power units for pmda-denki metrics

commit 6a24a53028b522a0357dc89c40b3c50a8f0e5378
Author: Christian Horn <chorn@fluxcoil.net>
Date:   Sun Jul 5 20:23:54 2026 +0900

    units for denki.bat.energy_now

commit 97a7637727591886b3b6429d460e6fbb754e3319
Merge: cbfae94d 44edd973
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Fri Jul 3 16:47:03 2026 +1000

    Merge branch 'main' of ../pcp

commit 44edd973b023c8d0729838007433e11b8960ff90
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Fri Jul 3 16:44:39 2026 +1000

    qa: remakes (mostly) from Slackware (vm15)
    
    Misc things, mostly no-IPv6 versions of .out files that have been
    remade elsewhere (on IPv6 platforms).

commit ea46caedbaefe613df26a67730d2146c359f7b66
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Fri Jul 3 16:43:03 2026 +1000

    src/pmdas/darwin/rewrite.conf: (new) missed in last commit

commit 71728cb295477aa10a87e89a4c97fd27be2b59a2
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Fri Jul 3 10:07:32 2026 +1000

    qa/635: add ip(1) as prefered alternative to netstat(1)
    
    netstat -ia is (a) too fragile, (b) sometimes broken, and (c)
    old-skool.
    
    ip -s link is an altogether better way to get network interface
    statistics for value comparison with the PCP equivalents.

commit cbfae94d4f20861ce089abb68bae17c0514aa9bf
Author: Nathan Scott <nathans@redhat.com>
Date:   Fri Jul 3 08:23:59 2026 +1000

    pcp-atop: set default logging interval to 1 minute (was 10)

commit 08cc6892a9241c61d7b08d067a14a2b55cb78620
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Fri Jul 3 06:56:09 2026 +1000

    qa/1676.out: remade after darwin_env-1 archive recreated

commit 0bfdf7d4b8b0c802a25dbb919b2e80296020f302
Merge: 95fcabfb da3dc273
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Fri Jul 3 06:54:54 2026 +1000

    Merge pull request #2643 from kmcdonell/wip
    
    Miscellaneous work items

commit da3dc273da6365aa231aacc7ddc6e8e09525daf9
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 21:10:10 2026 +1000

    src/pmdas/darwin/power.c: avoid integer truncation in temperature calculation

commit 257094a64e2b539d4635900f1755d660d5d5ace1
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 21:01:50 2026 +1000

    qa/archives/GNUmakefile: special rules for darwin archives

commit 182038c8eb0985378b9e527fe6cb3074c13dfa5d
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 20:50:00 2026 +1000

    qa: darwin changes
    
    - missing qa/1677
    - missing archives

commit f2a3679ea252c4048a58eb427b4ed7f7e398ccbc
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 20:48:12 2026 +1000

    build/tar/postinstall.tail: tweak ldconfig logic

commit 38d29009b8c7e8dfa4de2adf6652c2ce40de3ea7
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 20:47:15 2026 +1000

    src/pminfo/pminfo.c: small -1 tweak
    
    Following suggestion from @coderabbitai.

commit c04a66e5d7d9018b0e14807b52df7a36179b707f
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 20:18:58 2026 +1000

    Update src/zshrc/_pcp
    
    Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

commit c729e4faedc9f19b17eaab2f3e4df678d49f4500
Author: Christian Horn <chorn@redhat.com>
Date:   Thu Jul 2 17:51:49 2026 +0900

    fix issues found by coderabbit

commit 39473bb1eaa07ee4317dc50d2ff7dff4b5cf69c3
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 17:25:34 2026 +1000

    qa/1676: (new) missing from previous commits

commit a25a123b4c41a812243dec468ad26eb1c7f47a09
Merge: fc8eaee1 a25a0e89
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 16:09:36 2026 +1000

    Merge branch 'main' of https://github.com/kmcdonell/pcp

commit a25a0e897831765bcba388a94fe5e66d6cc3d3d8
Merge: 708b77e1 a54d166d
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 16:09:00 2026 +1000

    Merge branch 'main' of https://github.com/kmcdonell/pcp

commit 708b77e1bdd68b6548d3b2f77d65d471913058e7
Merge: a2b34277 95fcabfb
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 16:08:43 2026 +1000

    Merge branch 'main' of https://github.com/performancecopilot/pcp

commit a2b342772295505ee81a3ddec13e14cbab8221ad
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 16:00:43 2026 +1000

    macOS: embrace extra units for darwin PMDA  and list-packages support

commit fc8eaee11055d0e7fa72ca17a18be2502c32a6d5
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 15:32:07 2026 +1000

    src/pmdas/linux/mk.rewrite: small whitespace cosmetic fixup

commit ed9c0b99d4da654b97f53770bd0cc5f1cce05d1d
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 15:27:00 2026 +1000

    linux PMDA: fix data type for some disk metrics
    
    On 64-bit kernels, these metrics were exported as type U32 instead of U64:
        disk.dm.read_bytes
        disk.dm.write_bytes
        disk.dm.total_bytes
        disk.md.read_bytes
        disk.md.write_bytes
        disk.md.total_bytes
    
    Fix PMDA and update mk.rewite to generate a correct kernel_ulong.conf
    configuration for pmlogrewrite.

commit 6f0c399460d358a67c70c99c0e03715a962f2c27
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 15:20:53 2026 +1000

    pminfo: add -1 option
    
    Same as -d, except all pmDesc (metadata) is reported on a single
    line per metric with tab separated fields.  First field is the
    metric name.
    
    Easier for scripts consuming the output.

commit 95fcabfb41fab74d57937f9038199aba38c50207
Merge: 37d5ce8c 61259423
Author: Nathan Scott <natoscott@users.noreply.github.com>
Date:   Thu Jul 2 13:13:29 2026 +1000

    Merge pull request #2630 from performancecopilot/dependabot/github_actions/actions/checkout-7
    
    build(deps): bump actions/checkout from 6 to 7

commit 37d5ce8cb018048c68b8be7c58f90ae3f65e8e6a
Merge: affe8b7a 176f512e
Author: Nathan Scott <nathans@redhat.com>
Date:   Thu Jul 2 11:52:33 2026 +1000

    Merge branch 'push-docs' of github.com:christianhorn/pcp into christianhorn-push-docs

commit 79bdab70d1f88a16929505fcd889760a106c1b2d
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 07:37:51 2026 +1000

    build/tar/postinstall.tail: catch some more commands for -n
    
    Need to echo 'em, not execute 'em.

commit a54d166d970cf65e80d7e61d8322d8995ca48bf9
Author: Ken McDonell <kenj@kenj.id.au>
Date:   Thu Jul 2 07:23:25 2026 +1000

    build/tar/postinstall.tail: optionally run ldconfig
    
    To rebuild the shared library cache in case we've installed
    newer versions of some PCP DSO's.

commit 67d4b7af957575d64ee09a2f9e3443f921aba030
Author: Christian Horn <chorn@fluxcoil.net>
Date:   Wed Jul 1 21:06:23 2026 +0900

    add power units

commit 176f512e378610b1774b6853ae1baf13af9b53dc
Author: Christian Horn <chorn@fluxcoil.net>
Date:   Wed Jul 1 20:09:57 2026 +0900

    fix collecthost misnaming

commit affe8b7af90d4886259a70223fc422f7b9faeb32
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 1 18:17:02 2026 +1000

    libpcp: relax label name rules, skip invalid keys gracefully
    
    Allow underscore as a valid first character in label names.  The
    previous rule required the first character to be alphabetic, which
    rejected labels like "_block_size_resolved" exported by vLLM and
    other Prometheus-compatible systems.
    
    When a label key contains invalid characters (e.g. hyphens), skip
    that key-value pair and continue parsing the remaining labels.
    Previously, a single invalid key name caused the entire label set
    to be rejected.  The buffer and comma state are rewound so the
    resulting JSON remains valid.
    
    Add QA test 2008 covering: leading underscores, all-underscore
    names, invalid keys at first/middle/last positions, and vLLM-style
    large label sets.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
    Signed-off-by: Nathan Scott <nathans@redhat.com>

commit 18003b6b235fa2e16ffa8a1002ae9e513d55affc
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 1 16:09:35 2026 +1000

    pcp-atop: updates after covscan analysis
    
    various.c val2memstr(): MAXEBYTE8 equals LLONG_MAX so the check
    "verifyval <= MAXEBYTE8" was always true (Coverity CID 504429),
    making the OVFORMAT branch dead code (CID 504430).  Since count_t
    is signed long long, anything past MAXPBYTE is unconditionally
    EBFORMAT.  Remove MAXEBYTE8, MAXEBYTE, OVFORMAT, EBFORMAT_INT
    (all unused after this simplification).
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit a57d5edb48274c38bcb2ccac101c0939cf74d1ce
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 1 12:58:33 2026 +1000

    pcp-atop: updates after code review - all fairly minor cleanups

commit 82f8c271dbbf743564360a88704be4b921221784
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 1 12:53:14 2026 +1000

    pcp-atop: fix MEM avail to use KiB directly, not pages round-trip
    
    The original fix (8a2b618b) converted the KiB value from PCP's
    mem.util.available to pages in photosyst.c (KiB * 1024 / pagesize),
    then showsys.c multiplied by pagesize to get bytes — a pointless
    round-trip that lost precision on non-4K page systems.
    
    All other memory metrics in pcp-atop store PCP's KiB value directly
    and multiply by 1024 in the display routines to get bytes.  Fix
    availablemem to follow the same pattern:
    
      photosyst.c: store the KiB value as-is (remove * 1024 / pagesize)
      showsys.c:   change * pagesize to * 1024
    
    Audit of all pagesize uses in showsys.c confirms the remaining five
    are genuine page-count metrics (sockstat tcp/udp mem, cgroup physpages,
    NFS pagesmread/pagesmwrite) where * pagesize is correct.
    
    Closes #2631
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 4f5ef53ced6ff14b056d83eb18d75dde262a18eb
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 1 11:46:32 2026 +1000

    pcp-atop: derive default label set from labeldef[] instead of hardcoding
    
    The fallback when no -P labels are specified was a hardcoded string
    "CPU,CPL,MEM,SWP,DSK,NET,PRG,PRC" that would become stale if labels
    were added to or removed from the labeldef[] table.  Build the default
    set by iterating the full table instead.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 75cd16de5e2280ff8f5a2382e773003e81acd572
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 1 08:49:43 2026 +1000

    pcp-atop: bidirectional BindsTo between service and timer
    
    The timer now also binds to atop.service.  If someone explicitly stops
    atop, the timer stops too — no midnight restart of a deliberately
    stopped service.  Combined with the service's BindsTo on the timer,
    they always start and stop as a pair.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 7d57ba49bedba2d17192c6bda27b9648fb636902
Author: Nathan Scott <nathans@redhat.com>
Date:   Wed Jul 1 08:48:34 2026 +1000

    pcp-atop: BindsTo atop-daily.timer so the timer always starts with the service
    
    Without the daily timer, atop runs indefinitely without archive rotation
    or compression — a broken state.  BindsTo= ensures the timer starts
    whenever atop.service starts (and stops the service if the timer dies),
    so 'systemctl start atop.service' is all that's needed.  The Also= in
    [Install] handles enable/disable pairing.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit fe1c6cc9304c48a87d7638f22a9a34bfd88b53f9
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jun 29 20:46:45 2026 +1000

    pcp-atop: cancel inherited interval timer in volume rotation child
    
    The rawarchive_compress_volume() callback forks a child to compress
    completed data volumes with zstd.  The child inherits the parent's
    active ITIMER_REAL timer used for periodic sampling; the resulting
    SIGALRM kills zstd before it can write any data, leaving a zero-byte
    compressed file.
    
    Cancel the timer with alarm(0) before exec, matching the fix applied
    to sysstat's sadc for the same issue.
    
    Signed-off-by: Nathan Scott <nathans@redhat.com>

commit 561183e3097db9c9aa30426e598c1805f68833af
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jun 29 20:17:22 2026 +1000

    pcp-atop, pcp-summary: fix pcp(1) display of atop recording status
    
    pcp-summary.sh: merge sadc and generic pmimport display into one loop.
      All tools use the same pattern (tool-specific label, comma→space via
      tr, fmt wrapping); sadc's dedicated section is replaced by a case
      statement: sadc→"activity"/sadc-archive, atop→"labels"/archive,
      *→"modules"/archive.  Harmless for space-separated tools like collectl
      since tr ',' ' ' is a no-op.
    
    various.c: use ATOP_VERSION ("2.12.1") in pmiSetImportProgram instead
      of PCP_VERSION so pcp(1) reports the upstream atop version pcp-atop
      is based on, not the PCP package version.
    
    atop.h: define ATOP_VERSION "2.12.1" (upstream sync point v2.12.1).
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 53147733de8a9c8b9dfd5c6f37998d96eb44437c
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jun 29 20:00:39 2026 +1000

    pcp-atop: fix context deadlock and atop-daily exit code
    
    various.c: remove pmiSetZoneinfo(NULL) from rawwrite_open — when called
      before setup_globals the live PMAPI context does not yet exist, so
      __pmZoneinfo() (called by pmiSetZoneinfo) attempts to acquire the
      contexts_lock via PMAPI while rawwrite_open's pmiStart (PMI_APPEND)
      already holds it, causing EDEADLK.  pmiSetZoneinfo is already called
      in rawwrite_init_sidecar() which runs after setup_globals.
    
    atop-daily.sh: add exit 0 at the end — the new date-based culling loop
      ends with [ day -lt cutdate ] returning 1 (false = nothing to cull),
      which became the script's exit code, causing ExecStartPre to fail.
      The original find-based culling always returned 0.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>

commit 99b42ac2759d4027deaff2ccc665cfba0a3d47da
Author: Nathan Scott <nathans@redhat.com>
Date:   Mon Jun 29 18:04:28 2026 +1000

    pcp-atop: tie atop-daily.timer to atop.service enablement via Also=
    
    Add Also=atop-daily.timer to atop.service [Install] so that
      systemctl enable atop.service  also enables atop-daily.timer, and
      systemctl disable atop.service also disables it.
    
    Upstream atop handles this via RPM postinstall scriptlets; we use the
    unit-file mechanism so it works correctly regardless of install method.
    
    Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Created: 2026-05-23 Last update: 2026-07-20 16:32
4 low-priority security issues in bookworm low

There are 4 open security issues in bookworm.

4 issues left for the package maintainer to handle:
  • CVE-2023-6917: (needs triaging) A vulnerability has been identified in the Performance Co-Pilot (PCP) package, stemming from the mixed privilege levels utilized by systemd services associated with PCP. While certain services operate within the confines of limited PCP user/group privileges, others are granted full root privileges. This disparity in privilege levels poses a risk when privileged root processes interact with directories or directory trees owned by unprivileged PCP users. Specifically, this vulnerability may lead to the compromise of PCP user isolation and facilitate local PCP-to-root exploits, particularly through symlink attacks. These vulnerabilities underscore the importance of maintaining robust privilege separation mechanisms within PCP to mitigate the potential for unauthorized privilege escalation.
  • CVE-2024-3019: (needs triaging) A flaw was found in PCP. The default pmproxy configuration exposes the Redis server backend to the local network, allowing remote command execution with the privileges of the Redis user. This issue can only be exploited when pmproxy is running. By default, pmproxy is not running and needs to be started manually. The pmproxy service is usually started from the 'Metrics settings' page of the Cockpit web interface. This flaw affects PCP versions 4.3.4 and newer.
  • CVE-2024-45769: (needs triaging) A vulnerability was found in Performance Co-Pilot (PCP).  This flaw allows an attacker to send specially crafted data to the system, which could cause the program to misbehave or crash.
  • CVE-2024-45770: (needs triaging) A vulnerability was found in Performance Co-Pilot (PCP). This flaw can only be exploited if an attacker has access to a compromised PCP system account. The issue is related to the pmpost tool, which is used to log messages in the system. Under certain conditions, it runs with high-level privileges.

You can find information about how to handle these issues in the security team's documentation.

Created: 2024-02-29 Last update: 2026-05-29 02:03
Standards version of the package is outdated. wishlist
The package should be updated to follow the last version of Debian Policy (Standards-Version 4.7.4 instead of 4.7.2).
Created: 2025-12-23 Last update: 2026-05-26 12:02
testing migrations
  • This package will soon be part of the perl-5.42 transition. You might want to ensure that your package is ready for it. You can probably find supplementary information in the debian-release archives or in the corresponding release.debian.org bug.
  • This package will soon be part of the auto-openssl transition. You might want to ensure that your package is ready for it. You can probably find supplementary information in the debian-release archives or in the corresponding release.debian.org bug.
news
[rss feed]
  • [2026-05-29] pcp 7.1.5-1 MIGRATED to testing (Debian testing watch)
  • [2026-05-26] Accepted pcp 7.1.5-1 (source) into unstable (Nathan Scott)
  • [2026-05-25] pcp 7.1.4-1 MIGRATED to testing (Debian testing watch)
  • [2026-05-22] Accepted pcp 7.1.4-1 (source) into unstable (Nathan Scott)
  • [2026-05-02] Accepted pcp 7.1.3-2 (source) into unstable (Nathan Scott)
  • [2026-04-27] pcp 7.1.2-1 MIGRATED to testing (Debian testing watch)
  • [2026-04-24] Accepted pcp 7.1.2-1 (source) into unstable (Nathan Scott)
  • [2026-04-02] pcp 7.1.1-1 MIGRATED to testing (Debian testing watch)
  • [2026-03-30] Accepted pcp 7.1.1-1 (source) into unstable (Nathan Scott)
  • [2026-01-30] pcp 7.1.0-1 MIGRATED to testing (Debian testing watch)
  • [2026-01-28] Accepted pcp 7.1.0-1 (source) into unstable (Nathan Scott)
  • [2025-12-05] pcp 7.0.5-1 MIGRATED to testing (Debian testing watch)
  • [2025-11-21] Accepted pcp 7.0.5-1 (source) into unstable (Nathan Scott)
  • [2025-11-19] Accepted pcp 7.0.4-1 (source) into unstable (Nathan Scott)
  • [2025-11-12] Accepted pcp 7.0.3-1 (source arm64 all) into unstable (Nathan Scott)
  • [2025-11-01] pcp REMOVED from testing (Debian testing watch)
  • [2025-10-16] Accepted pcp 7.0.2-1 (source arm64 all) into unstable (Debian FTP Masters) (signed by: Nathan Scott)
  • [2025-09-23] Accepted pcp 7.0.1-1 (source arm64 all) into unstable (Debian FTP Masters) (signed by: Nathan Scott)
  • [2025-09-01] Accepted pcp 7.0.0-1 (source arm64 all) into unstable (Debian FTP Masters) (signed by: Nathan Scott)
  • [2025-04-21] pcp 6.3.8-1 MIGRATED to testing (Debian testing watch)
  • [2025-04-11] Accepted pcp 6.3.8-1 (source) into unstable (Nathan Scott)
  • [2025-04-07] pcp 6.3.7-1 MIGRATED to testing (Debian testing watch)
  • [2025-03-28] Accepted pcp 6.3.7-1 (source) into unstable (Nathan Scott)
  • [2025-03-17] Accepted pcp 6.3.6-1 (source) into unstable (Nathan Scott)
  • [2025-03-15] Accepted pcp 6.3.5-1 (source) into unstable (Nathan Scott)
  • [2025-03-13] Accepted pcp 6.3.4-1 (source) into unstable (Nathan Scott)
  • [2025-01-28] Accepted pcp 6.3.3-1 (source) into unstable (Nathan Scott)
  • [2024-09-17] Accepted pcp 6.3.1-1 (source) into unstable (Nathan Scott)
  • [2024-07-30] Accepted pcp 6.3.0-1 (source) into unstable (Nathan Scott)
  • [2024-06-03] pcp REMOVED from testing (Debian testing watch)
  • 1
  • 2
bugs [bug history graph]
  • all: 4
  • RC: 0
  • I&N: 3
  • M&W: 1
  • F&P: 0
  • patch: 0
links
  • homepage
  • lintian (2, 18)
  • buildd: logs, reproducibility, cross
  • popcon
  • browse source code
  • other distros
  • security tracker
  • screenshots
ubuntu Ubuntu logo [Information about Ubuntu for Debian Developers]
  • version: 7.1.5-1

Debian Package Tracker — Copyright 2013-2025 The Distro Tracker Developers
Report problems to the tracker.debian.org pseudo-package in the Debian BTS.
Documentation — Bugs — Git Repository — Contributing