Previously, top-level vdevs like log or special were wrongly added as
children of the previous outer vdev instead of the root.

Fix it by also showing the vdev with the same name as the pool and
start counting from level 1 (the pool itself serves as the root and
should be the only one with level 0). This results in the same kind
of structure as in PBS and (except for the root) zpool status itself.

Signed-off-by: Fabian Ebner <f.eb...@proxmox.com>
---

No changes from v1.

 PVE/API2/Disks/ZFS.pm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/PVE/API2/Disks/ZFS.pm b/PVE/API2/Disks/ZFS.pm
index 0418794..60077c4 100644
--- a/PVE/API2/Disks/ZFS.pm
+++ b/PVE/API2/Disks/ZFS.pm
@@ -240,8 +240,8 @@ __PACKAGE__->register_method ({
                $config = 1;
            } elsif ($config && $line =~ 
m/^(\s+)(\S+)\s*(\S+)?(?:\s+(\S+)\s+(\S+)\s+(\S+))?\s*(.*)$/) {
                my ($space, $name, $state, $read, $write, $cksum, $msg) = ($1, 
$2, $3, $4, $5, $6, $7);
-               if ($name ne "NAME" and $name ne $param->{name}) {
-                   my $lvl= int(length($space)/2); # two spaces per level
+               if ($name ne "NAME") {
+                   my $lvl = int(length($space) / 2) + 1; # two spaces per 
level
                    my $vdev = {
                        name => $name,
                        msg => $msg,
-- 
2.30.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to