mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-10 10:35:51 +00:00
4e67a93d49
99ad8c2c4routed collectDiskIO through fsfilters.IsVirtualBlockDevice to stop ZFS zvols being collected. That helper answers "can this device report SMART", which is the wrong question for I/O accounting: it also matches vd* and xvd*, so every agent running inside a KVM, Proxmox or Xen VM lost host disk I/O entirely, since vda is the real disk on those machines. It also dropped md, nbd, rbd, drbd and pmem, none of which were part of the report. Add IsNonPhysicalDiskIODevice for the I/O question and use it here. It covers only loop, ram, zram, dm- and zd, so the zvol fix for #1671 stands while everything that was collected before99ad8c2c4is collected again. Tests assert vda and xvda survive the I/O filter while still being excluded from SMART, so the two predicates cannot be conflated again. Contract-Neutral: behavioural regression fix, no contract delta Refs #1671