From: Dean Marx <dmarx@iol.unh.edu>
To: Jeremy Spewock <jspewock@iol.unh.edu>
Cc: probb@iol.unh.edu, npratte@iol.unh.edu, luca.vizzarro@arm.com,
yoan.picchi@foss.arm.com, Honnappa.Nagarahalli@arm.com,
paul.szczepanek@arm.com, juraj.linkes@pantheon.tech,
dev@dpdk.org
Subject: Re: [PATCH v2 1/2] dts: add csum HW offload to testpmd shell
Date: Mon, 26 Aug 2024 17:04:44 -0400 [thread overview]
Message-ID: <CABD7UXMbkGr12Rqges6UvRMRD0xixNv-u3Yi=_juYwsSULFC1A@mail.gmail.com> (raw)
In-Reply-To: <CAAA20UQSZsjN_7Mqson8RsnUv1hghUmZ_+oJu+paJ-tkBA3_Ow@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 3425 bytes --]
On Fri, Aug 23, 2024 at 10:54 AM Jeremy Spewock <jspewock@iol.unh.edu>
wrote:
> On Wed, Aug 21, 2024 at 12:25 PM Dean Marx <dmarx@iol.unh.edu> wrote:
> >
> > add csum_set_hw method to testpmd shell class. Port over
> > set_verbose and port start/stop from queue start/stop suite.
>
> Since we had that discussion in a DTS meeting about there not really
> being a rule against multiple dependencies or anything like that, I
> think it might be better if we start moving to just always depending
> on other patches rather than duplicating code in between multiple
> series'. Not a call out to you at all because I think I have multiple
> patches open right now where I also borrow from other suites because I
> didn't want long dependency lists, but I think the lists of
> dependencies might end up being easier to track than where the code is
> from. It also makes for more targeted commit messages.
>
> Let me know what you think though. This might be something worth
> talking about with the larger development group as well to get more
> opinions on it.
>
<snip>
I actually like that idea a lot, I'm going to add the dependency and remove
the corresponding methods, especially since it probably makes the
maintainer's jobs easier when there's less code duplication. I can also
send a message in the slack chat about this to see what other people think.
> > +class ChecksumOffloadOptions(Flag):
> > + """Flag representing checksum hardware offload layer options."""
> > +
> > + #:
> > + ip = auto()
> > + #:
> > + udp = auto()
> > + #:
> > + tcp = auto()
> > + #:
> > + sctp = auto()
> > + #:
> > + outerip = auto()
> > + #:
> > + outerudp = auto()
> > +
> > + def __str__(self):
> > + """String method for use in csum_set_hw."""
> > + if self == ChecksumOffloadOptions.outerip:
> > + return "outer-ip"
> > + elif self == ChecksumOffloadOptions.outerudp:
> > + return "outer-udp"
>
> It might be easier to name these values outer_ip and outer_udp and
> then just do a str.replace("_", "-") on them to get the same result.
>
Makes sense, I ended up just getting rid of the __str__ method entirely and
iterating through the options within the csum set hw method with the
__members__ method you mentioned later in this review. I was able to create
a for loop that looks like this:
for name, offload in ChecksumOffloadOptions.__members__.items():
if offload in layer:
(action)
where .items() returns all the flags in a dictionary, where the key is a
string of the flag name and the offload value is the actual flag instance
from the class. This way I could just call name = name.replace("_", "-")
within the loop and use name for send_command and offload for comparing
flags.
<snip>
> I honestly didn't know the `title()` method of a string existed in
> python until I just did a little searching and it seems strange to me,
> but it would be helpful for this use case. It also is weird to me that
> they would have everything other than outer-ip and outer-udp be all
> upper case.
Yeah it is really odd, I'm not sure if they had consistency in mind while
developing this part of testpmd. The title command is a great idea though,
I added that to the second part of the csum method and it really simplified
everything.
[-- Attachment #2: Type: text/html, Size: 4548 bytes --]
next prev parent reply other threads:[~2024-08-26 21:04 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-16 14:20 [PATCH v1 0/2] dts: port over checksum offload suite Dean Marx
2024-08-16 14:20 ` [PATCH v1 1/2] dts: add csum HW offload to testpmd shell Dean Marx
2024-08-16 14:20 ` [PATCH v1 2/2] dts: checksum offload test suite Dean Marx
2024-08-19 14:28 ` Alex Chapman
2024-08-19 17:01 ` Dean Marx
2024-08-19 14:28 ` [PATCH v1 0/2] dts: port over checksum offload suite Alex Chapman
2024-08-19 17:02 ` Dean Marx
2024-08-21 16:25 ` [PATCH v2 " Dean Marx
2024-08-21 16:25 ` [PATCH v2 1/2] dts: add csum HW offload to testpmd shell Dean Marx
2024-08-23 14:53 ` Jeremy Spewock
2024-08-26 21:04 ` Dean Marx [this message]
2024-08-21 16:25 ` [PATCH v2 2/2] dts: checksum offload test suite Dean Marx
2024-08-23 14:54 ` Jeremy Spewock
2024-08-26 21:17 ` Dean Marx
2024-08-23 14:53 ` [PATCH v2 0/2] dts: port over checksum offload suite Jeremy Spewock
2024-08-26 21:22 ` [PATCH v3 " Dean Marx
2024-08-26 21:22 ` [PATCH v3 1/2] dts: add csum HW offload to testpmd shell Dean Marx
2024-09-04 21:18 ` Jeremy Spewock
2024-08-26 21:22 ` [PATCH v3 2/2] dts: checksum offload test suite Dean Marx
2024-09-04 21:18 ` Jeremy Spewock
2024-10-14 18:23 ` [PATCH v4 0/2] dts: port over checksum offload suite Dean Marx
2024-10-14 18:23 ` [PATCH v4 1/2] dts: add csum HW offload to testpmd shell Dean Marx
2024-10-14 18:23 ` [PATCH v4 2/2] dts: checksum offload test suite Dean Marx
2024-10-15 19:13 ` [PATCH v5 0/2] dts: port over checksum offload suite Dean Marx
2024-10-15 19:13 ` [PATCH v5 1/2] dts: add csum HW offload to testpmd shell Dean Marx
2024-11-19 16:07 ` Patrick Robb
2024-11-19 16:31 ` Patrick Robb
2024-10-15 19:13 ` [PATCH v5 2/2] dts: checksum offload test suite Dean Marx
2024-11-19 16:11 ` Patrick Robb
2024-11-19 16:30 ` Patrick Robb
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='CABD7UXMbkGr12Rqges6UvRMRD0xixNv-u3Yi=_juYwsSULFC1A@mail.gmail.com' \
--to=dmarx@iol.unh.edu \
--cc=Honnappa.Nagarahalli@arm.com \
--cc=dev@dpdk.org \
--cc=jspewock@iol.unh.edu \
--cc=juraj.linkes@pantheon.tech \
--cc=luca.vizzarro@arm.com \
--cc=npratte@iol.unh.edu \
--cc=paul.szczepanek@arm.com \
--cc=probb@iol.unh.edu \
--cc=yoan.picchi@foss.arm.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).