All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: Danielle Ratson <danieller@nvidia.com>
Cc: <netdev@vger.kernel.org>, <mkubecek@suse.cz>,
	<matt@traverse.com.au>, <daniel.zahka@gmail.com>,
	<amcohen@nvidia.com>, <nbu-mlxsw@exchange.nvidia.com>
Subject: Re: [PATCH ethtool-next v3 10/16] qsfp: Add JSON output handling to --module-info in SFF8636 modules
Date: Tue, 4 Feb 2025 18:37:13 -0800	[thread overview]
Message-ID: <20250204183713.5cf64e08@kernel.org> (raw)
In-Reply-To: <20250204133957.1140677-11-danieller@nvidia.com>

On Tue, 4 Feb 2025 15:39:51 +0200 Danielle Ratson wrote:
> +	if (is_json_context())
> +		print_string(PRINT_JSON, "description", "%s", description);
> +	else
> +		printf("%s %s\n", pfx, description);
> +
>  	if (map->page_00h[SFF8636_EXT_ID_OFFSET] & SFF8636_EXT_ID_CDR_TX_MASK)
> -		printf("%s CDR present in TX,", pfx);
> +		strncpy(description, "CDR present in TX,", 64);
>  	else
> -		printf("%s No CDR in TX,", pfx);
> +		strncpy(description, "No CDR in TX,", 64);
>  
>  	if (map->page_00h[SFF8636_EXT_ID_OFFSET] & SFF8636_EXT_ID_CDR_RX_MASK)
> -		printf(" CDR present in RX\n");
> +		strcat(description, " CDR present in RX");
> +	else
> +		strcat(description, " No CDR in RX");
> +
> +	if (is_json_context())
> +		print_string(PRINT_JSON, "description", "%s", description);
>  	else
> -		printf(" No CDR in RX\n");
> +		printf("%s %s\n", pfx, description);

I think the description fields need to either be concatenated, or an
array. Otherwise the parser picks one:

from the commit msg:

$ cat tmp
[{
        "extended_identifier": {
            "value": 207,
            "description": "3.5W max. Power consumption",
            "description": "CDR present in TX, CDR present in RX",
            "description": "5.0W max. Power consumption, High Power Class enabled"
        },
}]

$ cat tmp | jq
[
  {
    "extended_identifier": {
      "value": 207,
      "description": "5.0W max. Power consumption, High Power Class enabled"
    }
  }
]

  parent reply	other threads:[~2025-02-05  2:37 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-04 13:39 [PATCH ethtool-next v3 00/16] Add JSON output to --module-info Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 01/16] module_common: Add a new file to all the common code for all module types Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 02/16] ethtool: Standardize Link Length field names across " Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 03/16] sff_common: Move sff_show_revision_compliance() to qsfp.c Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 04/16] cmis: Change loop order in cmis_show_dom_chan_lvl_flags() Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 05/16] qsfp: Reorder the channel-level flags list for SFF8636 module type Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 06/16] qsfp: Refactor sff8636_show_dom() by moving code into separate functions Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 07/16] module_common: Add helpers to support JSON printing for common value types Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 08/16] cmis: Add JSON output handling to --module-info in CMIS modules Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 09/16] cmis: Enable JSON output support " Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 10/16] qsfp: Add JSON output handling to --module-info in SFF8636 modules Danielle Ratson
2025-02-05  2:34   ` Jakub Kicinski
2025-02-05  7:45     ` Danielle Ratson
2025-02-05 10:48     ` Vadim Fedorenko
2025-02-05 12:13       ` Danielle Ratson
2025-02-05 12:20         ` Vadim Fedorenko
2025-02-05 12:25           ` Danielle Ratson
2025-02-05  2:37   ` Jakub Kicinski [this message]
2025-02-05 11:32     ` Petr Machata
2025-02-05 11:41       ` Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 11/16] qsfp: Enable JSON output support for " Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 12/16] sfpid: Add JSON output handling to --module-info in SFF8079 modules Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 13/16] sfpdiag: Add JSON output handling to --module-info in SFF8472 modules Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 14/16] ethtool: Enable JSON output support for SFF8079 and " Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 15/16] module_info: Add a new JSON file for units documentation Danielle Ratson
2025-02-04 13:39 ` [PATCH ethtool-next v3 16/16] ethtool: Add '-j' support to ethtool Danielle Ratson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250204183713.5cf64e08@kernel.org \
    --to=kuba@kernel.org \
    --cc=amcohen@nvidia.com \
    --cc=daniel.zahka@gmail.com \
    --cc=danieller@nvidia.com \
    --cc=matt@traverse.com.au \
    --cc=mkubecek@suse.cz \
    --cc=nbu-mlxsw@exchange.nvidia.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.