From: Ferruh Yigit <ferruh.yigit@intel.com> To: Andrew Boyer <aboyer@pensando.io> Cc: dev@dpdk.org, Alfredo Cardigliano <cardigliano@ntop.org> Subject: Re: [dpdk-dev] [PATCH v3 9/9] net/ionic: minor logging fixups Date: Wed, 9 Dec 2020 15:42:49 +0000 Message-ID: <79aebafa-6b07-c546-0356-97b56f28241a@intel.com> (raw) In-Reply-To: <F0A5BB4A-5E75-4B0D-88C7-9C48284EBFE9@pensando.io> On 12/9/2020 2:45 PM, Andrew Boyer wrote: > > >> On Dec 9, 2020, at 8:47 AM, Ferruh Yigit <ferruh.yigit@intel.com >> <mailto:ferruh.yigit@intel.com>> wrote: >> >> On 12/4/2020 8:16 PM, Andrew Boyer wrote: >>> Expose ionic_opcode_to_str() so it can be used for dev cmds, too. >>> Store the device name in struct adapter. >>> Switch to memcpy() to work around gcc false positives. >>> Signed-off-by: Andrew Boyer <aboyer@pensando.io <mailto:aboyer@pensando.io>> >>> --- >>> drivers/net/ionic/ionic.h | 1 + >>> drivers/net/ionic/ionic_dev.c | 5 +++ >>> drivers/net/ionic/ionic_dev.h | 2 + >>> drivers/net/ionic/ionic_ethdev.c | 4 +- >>> drivers/net/ionic/ionic_lif.c | 68 ++++++++++++++++--------------- >>> drivers/net/ionic/ionic_mac_api.c | 4 +- >>> drivers/net/ionic/ionic_main.c | 32 ++++++++------- >>> drivers/net/ionic/ionic_rxtx.c | 41 ++++++++----------- >>> 8 files changed, 84 insertions(+), 73 deletions(-) >> >> <...> >> >>> @@ -1217,12 +1221,11 @@ ionic_lif_notifyq_init(struct ionic_lif *lif) >>> } >>> }; >>> -IONIC_PRINT(DEBUG, "notifyq_init.index %d", >>> -ctx.cmd.q_init.index); >>> -IONIC_PRINT(DEBUG, "notifyq_init.ring_base 0x%" PRIx64 "", >>> -ctx.cmd.q_init.ring_base); >>> +IONIC_PRINT(DEBUG, "notifyq_init.index %d", q->index); >>> +IONIC_PRINT(DEBUG, "notifyq_init.ring_base %#jx", q->base_pa); >> >> There are lots of similar PRIx64 -> %j change in this patch, >> '%j' specifier is for 'intmax_t' and which seems 64bit storage, so this should >> work with 64 bit variable 'q->base_pa', >> but the variable is explicitly uint64_t why replacing 'PRIx64' usage which is >> correct and more common usage in the DPDK? Why ionic is want to do this in its >> own way, I am not clear of the motivation of these changes really, can you >> please clarify? > > As best I know, I am following the (two different) contribute guidelines pages, > both of which direct submitters to run checkpatch. One of things checkpatch > flags is lines over 80 columns. Many of these lines were over 80 columns or > oddly broken to meet the 80 column limit. > > %j is used in many other places in this PMD - as originally written by Alfredo, > one of your core contributors. If we are allowed to use %j, I want to, since I > much prefer it to the hideous PRIx64. > %j is accepted, that is not an issue. But you are making an active effort to convert PRIx64 -> %j, which is very unnecessary in my opinion. 80 column limit is not for log strings, but even if you are fixing them that is different thing from the PRIx64 -> %j conversion, you can keep PRIx64 and stay in 80 columns, and indeed lots of the cases the column limit seems not an issue at all. Andrew, this is a driver currently marked as 'UNMAINTAINED', I kindly suggest focusing your 70+ functional changes instead of this PRIx64 -> %j syntax changes, but it is all up to you of course. >> <...> >> >>> @@ -1448,8 +1450,9 @@ ionic_lif_set_name(struct ionic_lif *lif) >>> }, >>> }; >>> -snprintf(ctx.cmd.lif_setattr.name, sizeof(ctx.cmd.lif_setattr.name), >>> -"%d", lif->port_id); >>> +/* FW is responsible for NULL terminating this field */ >>> +memcpy(ctx.cmd.lif_setattr.name, lif->name, >>> +sizeof(ctx.cmd.lif_setattr.name)); >> >> Even though FW may be guaranting the string will be null terminated, won't it >> be nice to provide input as null terminated if this is the expectation? > > No, that is not the expectation. We prefer it to be this way. > It is know that FW will add NULL terminate the string but you "prefer" to provide 'name' without NULL termination. Why? "we prefer it to be this way" is not a good justification, please either change or explain in a logical way.
next prev parent reply other threads:[~2020-12-09 15:43 UTC|newest] Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-11-02 18:35 [dpdk-dev] [PATCH 0/8] net/ionic: minor updates and documentation Andrew Boyer 2020-11-02 18:35 ` [dpdk-dev] [PATCH 1/8] ionic: update documentation and MAINTAINERS Andrew Boyer 2020-11-03 12:35 ` Ferruh Yigit 2020-11-03 14:43 ` Andrew Boyer 2020-11-02 18:35 ` [dpdk-dev] [PATCH 2/8] ionic: connect to the meson build system Andrew Boyer 2020-11-02 18:35 ` [dpdk-dev] [PATCH 3/8] ionic: update ionic_if.h to the latest version Andrew Boyer 2020-11-03 12:44 ` Ferruh Yigit 2020-11-03 14:36 ` Andrew Boyer 2020-11-03 15:55 ` Ferruh Yigit 2020-11-02 18:35 ` [dpdk-dev] [PATCH 4/8] ionic: check for devcmd/admincmd completion more frequently Andrew Boyer 2020-11-02 18:35 ` [dpdk-dev] [PATCH 5/8] ionic: remove some unused fields Andrew Boyer 2020-11-02 18:35 ` [dpdk-dev] [PATCH 6/8] ionic: convert 'deferred' boolean to a flag bit Andrew Boyer 2020-11-02 18:35 ` [dpdk-dev] [PATCH 7/8] ionic: warn if RTE tries to enable loopback mode Andrew Boyer 2020-11-03 12:52 ` Ferruh Yigit 2020-11-02 18:35 ` [dpdk-dev] [PATCH 8/8] ionic: nits - whitespace, logging, helper variables Andrew Boyer 2020-11-03 13:06 ` Ferruh Yigit 2020-11-03 14:00 ` Andrew Boyer 2020-11-03 14:02 ` Ferruh Yigit 2020-11-03 13:11 ` [dpdk-dev] [PATCH 0/8] net/ionic: minor updates and documentation Ferruh Yigit 2020-11-03 14:45 ` Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 0/9] " Andrew Boyer 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 " Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 " Andrew Boyer 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 " Andrew Boyer 2020-12-10 12:31 ` Ferruh Yigit 2020-12-10 14:44 ` [dpdk-dev] Patchworks " Andrew Boyer 2020-12-10 15:06 ` Ferruh Yigit 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 1/9] net/ionic: connect ionic to the build system Andrew Boyer 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 2/9] net/ionic: update interface file to the latest version Andrew Boyer 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 3/9] net/ionic: update documentation and MAINTAINERS Andrew Boyer 2020-12-10 12:01 ` Ferruh Yigit 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 4/9] net/ionic: check for cmd completion more frequently Andrew Boyer 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 5/9] net/ionic: remove some unused fields Andrew Boyer 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 6/9] net/ionic: convert 'deferred' boolean to a flag bit Andrew Boyer 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 7/9] net/ionic: warn if loopback mode is requested Andrew Boyer 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 8/9] net/ionic: minor refactorings and helper variables Andrew Boyer 2020-12-10 2:57 ` [dpdk-dev] [PATCH v5 9/9] net/ionic: minor logging fixups Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 1/9] net/ionic: connect ionic to the build system Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 2/9] net/ionic: update interface file to the latest version Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 3/9] net/ionic: update documentation and MAINTAINERS Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 4/9] net/ionic: check for cmd completion more frequently Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 5/9] net/ionic: remove some unused fields Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 6/9] net/ionic: convert 'deferred' boolean to a flag bit Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 7/9] net/ionic: warn if loopback mode is requested Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 8/9] net/ionic: minor refactorings and helper variables Andrew Boyer 2020-12-10 2:07 ` [dpdk-dev] [PATCH v4 9/9] net/ionic: minor logging fixups Andrew Boyer 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 1/9] net/ionic: connect ionic to the build system Andrew Boyer 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 2/9] net/ionic: update interface file to the latest version Andrew Boyer 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 3/9] net/ionic: update documentation and MAINTAINERS Andrew Boyer 2020-12-09 12:03 ` Ferruh Yigit 2020-12-09 14:36 ` Andrew Boyer 2020-12-09 15:24 ` Ferruh Yigit 2020-12-09 16:24 ` Andrew Boyer 2020-12-09 17:15 ` Ferruh Yigit 2020-12-09 19:05 ` Andrew Boyer 2020-12-10 9:23 ` Ferruh Yigit 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 4/9] net/ionic: check for cmd completion more frequently Andrew Boyer 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 5/9] net/ionic: remove some unused fields Andrew Boyer 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 6/9] net/ionic: convert 'deferred' boolean to a flag bit Andrew Boyer 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 7/9] net/ionic: warn if loopback mode is requested Andrew Boyer 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 8/9] net/ionic: minor refactorings and helper variables Andrew Boyer 2020-12-09 13:04 ` Ferruh Yigit 2020-12-09 14:39 ` Andrew Boyer 2020-12-09 15:25 ` Ferruh Yigit 2020-12-04 20:16 ` [dpdk-dev] [PATCH v3 9/9] net/ionic: minor logging fixups Andrew Boyer 2020-12-09 13:47 ` Ferruh Yigit 2020-12-09 14:45 ` Andrew Boyer 2020-12-09 15:42 ` Ferruh Yigit [this message] 2020-12-09 19:26 ` Andrew Boyer 2020-12-10 9:58 ` Ferruh Yigit 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 1/9] net/ionic: connect ionic to the build system Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 2/9] net/ionic: update interface file to the latest version Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 3/9] net/ionic: update documentation and MAINTAINERS Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 4/9] net/ionic: check for cmd completion more frequently Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 5/9] net/ionic: remove some unused fields Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 6/9] net/ionic: convert 'deferred' boolean to a flag bit Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 7/9] net/ionic: warn if loopback mode is requested Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 8/9] net/ionic: minor refactorings and helper variables Andrew Boyer 2020-12-03 20:34 ` [dpdk-dev] [PATCH v2 9/9] net/ionic: minor logging fixups Andrew Boyer
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=79aebafa-6b07-c546-0356-97b56f28241a@intel.com \ --to=ferruh.yigit@intel.com \ --cc=aboyer@pensando.io \ --cc=cardigliano@ntop.org \ --cc=dev@dpdk.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
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git