Skip to content

Releases: olivierlambert/xentop-ng

xentop-ng v0.5.0

Choose a tag to compare

@github-actions github-actions released this 02 Oct 20:49
d5e33ba

What's new

Numbers you can trust: xentop-ng no longer shows a spike, a zero or a
complete-looking total when it didn't actually measure one.

Changed

  • --batch JSON: host.pcpu_busy entries can be null (a core without
    a baseline yet), and a source in "sources" can be partial. New
    fields say how complete each figure is: disk_samples (host, domain,
    SR) and host.pcpu_samples count devices with a valid interval
    (available of total, plus pending new disks);
    sources.vbd_latency_coverage and sources.steal_coverage do the same
    for latency and steal. VBDs gain stats_valid, warming_up and
    collection_error; domains gain baseline_reset. See
    Batch mode.
  • Totals missing some disks or pCPUs are marked * and raise the header's
    ◐ marker; with none they show -. History graphs show a dotted gap for
    a missing sample instead of drawing it as idle, and keep the sum of the
    disks that were measured.
  • Steal time available for only some domains now raises the ◐ marker
    (missing steal still doesn't: that depends on the hypervisor).

Fixed

  • A hung hypervisor or xenstore call froze the whole interface. Sampling
    now runs on its own thread: keys keep working, the header shows how
    stale the data is, and q quits at once.
  • When xentop-ng can't start (no Xen, missing library), it prints why and
    exits before taking over the terminal.
  • A rebooted VM, or another VM reusing its domain ID, could inherit the
    old one's history, or show a CPU or disk spike computed across the two.
    VMs are now recognised by their xenstore UUID (no xapi needed), so a
    rename keeps the history and a different VM starts afresh.
  • Disk rates spanning a failed read, a counter reset or a swapped VDI
    could show huge or bogus values; that interval is now skipped. A disk
    read failure shows as read! in the details instead of being added to
    the disk's I/O error count.
  • Booting a VM no longer flags its disks as failing for the ~15 s before
    the guest's PV driver connects; they wait for a baseline like a new disk.
  • A pCPU going offline or online could wipe or mix up the cores' history
    graphs, and showed a newly online core at 100%.
  • An unreadable /proc/net/dev was reported as "no VIFs" instead of
    missing data.

Security

  • New libxenstat patch 0005:
    libxenstat reads tapdisk's stats from world-writable /dev/shm with a
    plain fopen(), so a symlink, FIFO or crafted file there could hang or
    mislead a root monitor. The patch only accepts root-owned, non-writable,
    regular files with a valid record. xentop-ng's own fallback already did;
    this protects libxenstat itself, so apply it if you replace libxenstat.

Downloads

  • xentop-ng-v0.5.0-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.5.0-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.5.0-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.
  • xentop-ng-v0.5.0-aarch64-linux-gnu.tar.gz and
    xentop-ng-v0.5.0-riscv64-linux-gnu.tar.gz: the same for arm64
    (glibc 2.17 or newer) and riscv64 (glibc 2.27 or newer) dom0s.
    Tested under qemu-user only so far; reports from real hosts welcome.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.4.1

Choose a tag to compare

@github-actions github-actions released this 02 Oct 16:44
e2de8db

What's new

Fixed

  • The SR view (v) lists the SRs plugged into the host even when no VM
    uses them, instead of "no storage mapping (xenstore)" on a host with no
    running VM (#6).
    They come from xapi; DVD drives, removable media and ISO libraries are
    left out. Without xapi, an empty view now says no VM disk is active,
    and "no storage mapping" only shows when disks can't be mapped.

Security

  • --lib PATH as root loaded the path as given after checking the file it
    resolved to. If the path went through a symlink in a directory its owner
    controls, the symlink could be swapped in between and another library
    loaded as root (relevant when xentop-ng is granted through sudo). It now
    loads the file it checked.

Internal

  • Code reorganised with no change in behavior: the UI is split into one
    file per panel, the Xen libraries are loaded in one place, and reading
    libxenstat is separate from filling its gaps (now unit-tested).

Downloads

  • xentop-ng-v0.4.1-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.4.1-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.4.1-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.
  • xentop-ng-v0.4.1-aarch64-linux-gnu.tar.gz and
    xentop-ng-v0.4.1-riscv64-linux-gnu.tar.gz: the same for arm64
    (glibc 2.17 or newer) and riscv64 (glibc 2.27 or newer) dom0s.
    Tested under qemu-user only so far; reports from real hosts welcome.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.4.0

Choose a tag to compare

@github-actions github-actions released this 02 Oct 12:09
a41e365

What's new

Added

  • Downloads for arm64 (aarch64-linux-gnu, glibc 2.17 or newer) and
    RISC-V (riscv64-linux-gnu, glibc 2.27 or newer) dom0s. They are
    cross-built, and each release runs the test suite and the demo under
    qemu-user; they haven't been tried on a real Arm or RISC-V Xen host yet:
    reports are welcome, see Architectures.

Downloads

  • xentop-ng-v0.4.0-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.4.0-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.4.0-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.
  • xentop-ng-v0.4.0-aarch64-linux-gnu.tar.gz and
    xentop-ng-v0.4.0-riscv64-linux-gnu.tar.gz: the same for arm64
    (glibc 2.17 or newer) and riscv64 (glibc 2.27 or newer) dom0s.
    Tested under qemu-user only so far; reports from real hosts welcome.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.3.2

Choose a tag to compare

@github-actions github-actions released this 02 Oct 06:57
ab631c8

What's new

Fixed

  • Domain names are no longer cut while there is room to show them:
    • the mem box cut them at 12 characters; names now get as much room as
      the longest one needs, up to half the row, so a wide mem box (cpu box
      hidden with 1) shows them in full;
    • the same in the cpu box's "top domains" list (stock libxenstat),
      which cut them at 9;
    • the domain table's NAME column grew by at most 12 columns; it now
      grows to the longest name, leaving the CPU history at least half of
      the spare width. Long names never push other columns out;
    • SR names in the SR view (v) use the width left over past 20
      columns;
    • these widths grow at once but shrink only after 30 s, so short-lived
      VMs (CI jobs, backups) don't shift the columns as they come and go.

Downloads

  • xentop-ng-v0.3.2-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.3.2-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.3.2-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.3.1

Choose a tag to compare

@github-actions github-actions released this 01 Oct 18:21
5067125

What's new

Changed

  • Screenshots of the 0.3.0 features in the README (SR view, domain
    details), and a refreshed tour GIF.
  • Release notes on GitHub now include the release's CHANGELOG entry.

Downloads

  • xentop-ng-v0.3.1-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.3.1-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.3.1-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.3.0

Choose a tag to compare

@github-actions github-actions released this 01 Oct 17:59
de1ee1f

Downloads

  • xentop-ng-v0.3.0-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.3.0-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.3.0-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.2.2

Choose a tag to compare

@github-actions github-actions released this 01 Oct 07:43

Downloads

  • xentop-ng-v0.2.2-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.2.2-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.2.2-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.2.1

Choose a tag to compare

@github-actions github-actions released this 01 Oct 06:45

Downloads

  • xentop-ng-v0.2.1-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.2.1-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.2.1-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.2.0

Choose a tag to compare

@github-actions github-actions released this 01 Oct 06:30

Downloads

  • xentop-ng-v0.2.0-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.2.0-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.2.0-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.

xentop-ng v0.1.2

Choose a tag to compare

@github-actions github-actions released this 01 Oct 05:43

Downloads

  • xentop-ng-v0.1.2-xcp-ng-8.3.tar.gz: for XCP-ng 8.3. Includes the
    patched libxenstat (used only through the xtop launcher) and an
    installer: tar xzf … && cd xentop-ng-v0.1.2-xcp-ng-8.3 && ./install.sh,
    then run /opt/xentop-ng/bin/xtop.
  • xentop-ng-v0.1.2-x86_64-linux-gnu.tar.gz: the binary alone, for
    any x86_64 Linux dom0 with glibc 2.17 or newer. It uses the system
    libxenstat and fills gaps with built-in fallbacks.

Verify: sha256sum -c SHA256SUMS and
gh attestation verify <file> --repo olivierlambert/xentop-ng.