From nobody Mon Oct 20 02:35:18 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cqffb0Vh3z6D11R; Mon, 20 Oct 2025 02:35:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cqffZ6skvz42B0; Mon, 20 Oct 2025 02:35:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760927719; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oMePEV6N1FnVLuM1EeIkHgUTcxeNHuHyEHIGrqWrrw4=; b=v+RfqIiiDCkAXxUERtT0s40tIGG4EGUssBbj5aSII0wcJd4Bq6rTsgppljFR3HSeXJBHRc a8h7mXW61Km2c71kaUw2VH8do0M6I+TlQxdCThvtJlGiNUjxKXsZ0MSYyW43MgNAeTRIKs 6n+ELyUd0zUFpEQp6xSU/iebUlOs4MMRWSDqiAGv0kJKFwtvX7gKV+6Hc37PpCwaqRJpN0 QTFDlEbXmLUDTmTjFRW6rk4QOJbmSxExNnsR7mGtK+3y36viK12ZLZdMW75/ouwplLLuWR f7soBzUrh64i+sa5ttvqrD3aiNQOqyj1CVUk3n1HVJzZ1yGRDSyh3B0bG4SpNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760927719; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oMePEV6N1FnVLuM1EeIkHgUTcxeNHuHyEHIGrqWrrw4=; b=s/z+rcljbIS1PwK6xXe/GPLv9SA4G16OMYjGf0bmVmF0JPYv0mXWvqPH6FMnytg/YZoUpU 9QCl1K7abJ/egmD4KHbz+TbIOv6W2RIBfpu/QRHhUVJ87yvxxfb/4AJ0MBhiJ2vwaJlXmd Cq6NU8fq3OZAxm1FydTLDuDYZbjyh9iSMT1ZVPDi4WuTW1WXHK+zlN6yZ4uNV4ee9H7RY1 rb36PKe0+/DQsX5LIBdP0aTrXBf9levq9upjkDhGVTgDl6T3Q35Nn7DF8LwV8pAsDtWlt5 Q3y/cTbqa2ZgcMAZ9f3qoqHId67XoeAfuFs66FOpfNUp127K/aymoyi2vfZhWw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760927719; a=rsa-sha256; cv=none; b=lfrf6ZCVxd2EPrnfBV5zZDe0oHD5tK4rsnm9/+EGt2G0kwWb7+ch1P0N4Wq+o94GN6DQPm FZlIM+JZsh0ikdBxy+2bLR8yFABCitgJBAQxlYQUdvNRBwEv5oFfsfpaSx90Kq+t+MXrDT rgPDOE7Lr06iZjqAS/oP6iJ5o3dRRQyq28kgQadeFTi4laQYwOUwpl78yaQF/XC0Ml8jUZ 0OnaGtR7156C2GIhmA9r/X9D/GYE6zresbb6+PM5cXPWTOYrB0kUQSd3GVp/8eVX2FZeaV bMgtQEk12eiLOrDKd/v9MIJC9eNi5mKXj/a5HOPAXuS8koboObw8s67r5wiiAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cqffZ6PFszv87; Mon, 20 Oct 2025 02:35:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 59K2ZIIP091886; Mon, 20 Oct 2025 02:35:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59K2ZINV091883; Mon, 20 Oct 2025 02:35:18 GMT (envelope-from git) Date: Mon, 20 Oct 2025 02:35:18 GMT Message-Id: <202510200235.59K2ZINV091883@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brad Davis Subject: git: 2f461ddd784b - main - geom: fix glabel status not showing components List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brd X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2f461ddd784b4abdb7f88701d20fc45f658c42f5 Auto-Submitted: auto-generated The branch main has been updated by brd: URL: https://cgit.FreeBSD.org/src/commit/?id=2f461ddd784b4abdb7f88701d20fc45f658c42f5 commit 2f461ddd784b4abdb7f88701d20fc45f658c42f5 Author: Brad Davis AuthorDate: 2025-10-18 00:31:12 +0000 Commit: Brad Davis CommitDate: 2025-10-20 02:35:06 +0000 geom: fix glabel status not showing components Also fix some typos and move a couple NULL checks earlier. Reviewed by: mckusick, Johan Söllvander, markj, kevans, adrian Fixes: 0d4642a67e59f8da5e00a05001c342bdad2a806f MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53180 --- sbin/geom/core/geom.c | 37 ++++++++++++++++++++++--------------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/sbin/geom/core/geom.c b/sbin/geom/core/geom.c index 1a4f7e1f061a..2de696ce6a43 100644 --- a/sbin/geom/core/geom.c +++ b/sbin/geom/core/geom.c @@ -1189,10 +1189,11 @@ status_one_geom(struct ggeom *gp, int script, int name_len, int status_len) gotone = len = 0; xo_open_instance("status"); LIST_FOREACH(cp, &gp->lg_consumer, lg_consumer) { + if (cp->lg_provider == NULL) + continue; + cstate = status_one_consumer(cp, "state"); csyncr = status_one_consumer(cp, "synchronized"); - if (cstate == NULL && csyncr == NULL) - continue; if (!gotone || script) { if (!gotone) { xo_emit("{:name/%*s} {:status/%*s} ", @@ -1206,14 +1207,17 @@ status_one_geom(struct ggeom *gp, int script, int name_len, int status_len) xo_open_instance("components"); if (cstate != NULL && csyncr != NULL) { - xo_emit("{P:/%*s}{:compontent} ({:state}, {:synchronized})\n", + xo_emit("{P:/%*s}{:component} ({:state}, {:synchronized})\n", len, "", cp->lg_provider->lg_name, cstate, csyncr); } else if (cstate != NULL) { - xo_emit("{P:/%*s}{:compontent} ({:state})\n", + xo_emit("{P:/%*s}{:component} ({:state})\n", len, "", cp->lg_provider->lg_name, cstate); - } else { - xo_emit("{P:/%*s}{:compontent} ({:synchronized})\n", + } else if (csyncr != NULL) { + xo_emit("{P:/%*s}{:component} ({:synchronized})\n", len, "", cp->lg_provider->lg_name, csyncr); + } else { + xo_emit("{P:/%*s}{:component}\n", + len, "", cp->lg_provider->lg_name); } xo_close_instance("components"); gotone = 1; @@ -1224,7 +1228,7 @@ status_one_geom(struct ggeom *gp, int script, int name_len, int status_len) xo_emit("{:name/%*s} {:status/%*s} ", name_len, name, status_len, status); xo_open_list("components"); xo_open_instance("components"); - xo_emit("{P:/%*s}{d:compontent}\n", len, "", "N/A"); + xo_emit("{P:/%*s}{d:component}\n", len, "", "N/A"); xo_close_instance("components"); } xo_close_list("components"); @@ -1258,11 +1262,11 @@ status_one_geom_prs(struct ggeom *gp, int script, int name_len, int status_len) } gotone = len = 0; LIST_FOREACH(cp, &gp->lg_consumer, lg_consumer) { - cstate = status_one_consumer(cp, "state"); - csyncr = status_one_consumer(cp, "synchronized"); - if (cstate == NULL && csyncr == NULL) + if (cp->lg_provider == NULL) continue; + cstate = status_one_consumer(cp, "state"); + csyncr = status_one_consumer(cp, "synchronized"); if (!gotone || script) { if (!gotone) { xo_emit("{:name/%*s} {:status/%*s} ", @@ -1276,14 +1280,17 @@ status_one_geom_prs(struct ggeom *gp, int script, int name_len, int status_len) xo_open_instance("component"); if (cstate != NULL && csyncr != NULL) { - xo_emit("{P:/%*s}{:compontent} ({:state}, {:synchronized})\n", + xo_emit("{P:/%*s}{:component} ({:state}, {:synchronized})\n", len, "", cp->lg_provider->lg_name, cstate, csyncr); } else if (cstate != NULL) { - xo_emit("{P:/%*s}{:compontent} ({:state})\n", + xo_emit("{P:/%*s}{:component} ({:state})\n", len, "", cp->lg_provider->lg_name, cstate); - } else { - xo_emit("{P:/%*s}{:compontent} ({:synchronized})\n", + } else if (csyncr != NULL) { + xo_emit("{P:/%*s}{:component} ({:synchronized})\n", len, "", cp->lg_provider->lg_name, csyncr); + } else { + xo_emit("{P:/%*s}{:component}\n", + len, "", cp->lg_provider->lg_name); } xo_close_instance("component"); gotone = 1; @@ -1294,7 +1301,7 @@ status_one_geom_prs(struct ggeom *gp, int script, int name_len, int status_len) xo_emit("{:name/%*s} {:status/%*s} ", name_len, name, status_len, status); xo_open_list("components"); xo_open_instance("components"); - xo_emit("{P:/%*s}{d:compontent}\n", len, "", "N/A"); + xo_emit("{P:/%*s}{d:component}\n", len, "", "N/A"); xo_close_instance("components"); } xo_close_list("components");