From: Jakub Kicinski <kuba@kernel.org>
To: Edward Cree <ecree.xilinx@gmail.com>
Cc: netdev@vger.kernel.org, linux-net-drivers@amd.com,
davem@davemloft.net, pabeni@redhat.com, edumazet@google.com,
habetsm.xilinx@gmail.com
Subject: Re: [PATCH v2 net-next 3/6] sfc: optional logging of TC offload errors
Date: Wed, 28 Sep 2022 12:07:54 -0700 [thread overview]
Message-ID: <20220928120754.5671c0d7@kernel.org> (raw)
In-Reply-To: <cd10c58a-5b82-10a3-8cf8-4c08f85f87e6@gmail.com>
On Wed, 28 Sep 2022 19:58:23 +0100 Edward Cree wrote:
> On 28/09/2022 19:32, Jakub Kicinski wrote:
> > I won't help with the indirect stuff, I fixed it once a while
> > back already and it keeps getting broken. It must be a case of
> > the extack not being plumbed thru, or people being conservative
> > because the errors are not fatal, right? Solvable.
>
> The conceptual problem, as I see it, is that multiple hw drivers /
> driver instances might be trying to offload the same tunnel rule,
> because the ingress device isn't actually specified anywhere in
> the weird inside-out way TC tunnel rules work.
> So how do you deal with the case where one driver succeeds and
> another fails to offload, or two fail with different rc and
> extack messages?
Let's solve practical problems first :) The cases with multiple devices
offloading are rare AFAIK.
> But I really need to go and check what it does right now, because
> my information might be out of date — some of this driver code
> was first written two years ago so maybe it's since been solved.
>
> > The printf'ing? I recon something simple like adding a destructor
> > for the message to the exack struct so you can allocate the message,
>
> What about just a flag to say "please kfree() the msg on destruct"?
> I have a hard time imagining a destructor that would need to do
> anything different.
Yes, seems like that could be good enough. I was wondering if perhaps
someone would like to have a "static" buffer and manage ownership (given
most of the config happens under rtnl_lock) but perhaps that's
unnecessary complexity.
BTW we will prolly need two bits, one to indicate the creator will
actually call free and the other to mark that it's needed. Otherwise
we'd need to sift thru the stack and find all extack instances.
You can if you want to but...
> > or adding a small buffer in place (the messages aren't very long,
> > usually) come to mind.
>
> Also an option, yeah. Downside is that it consumes that memory
> (I guess 80B or so?) for every netlink response whether it's using
> formatted extack or not; idk if people with lots of netlink
> traffic might start to care about that.
It's just a buffer on the stack, in the struct, the extack is
transformed into netlink attrs in the same way regardless.
Stack use is the only concern, no other impact on those not using it.
> Should I rustle up an RFC patch for one of these, or post an RFD to
> the list to canvass other vendors' opinions?
Would be great! Maybe also grep the archive, cause this came up before.
Someone was against this in the past, perhaps, perhaps even me :)
But if it wasn't me we should CC them.
next prev parent reply other threads:[~2022-09-28 19:08 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-26 18:57 [PATCH v2 net-next 0/6] sfc: bare bones TC offload ecree
2022-09-26 18:57 ` [PATCH v2 net-next 1/6] sfc: bind blocks for TC offload on EF100 ecree
2022-09-28 8:43 ` Martin Habets
2022-09-26 18:57 ` [PATCH v2 net-next 2/6] sfc: bind indirect " ecree
2022-09-26 18:57 ` [PATCH v2 net-next 3/6] sfc: optional logging of TC offload errors ecree
2022-09-28 17:44 ` Jakub Kicinski
2022-09-28 18:17 ` Edward Cree
2022-09-28 18:32 ` Jakub Kicinski
2022-09-28 18:58 ` Edward Cree
2022-09-28 19:07 ` Jakub Kicinski [this message]
2022-09-28 21:14 ` Edward Cree
2022-09-29 1:15 ` Jakub Kicinski
2022-09-30 9:03 ` Edward Cree
2022-09-30 14:19 ` Jakub Kicinski
2022-10-03 19:30 ` Edward Cree
2022-09-26 18:57 ` [PATCH v2 net-next 4/6] sfc: add a hashtable for offloaded TC rules ecree
2022-09-26 18:57 ` [PATCH v2 net-next 5/6] sfc: interrogate MAE capabilities at probe time ecree
2022-09-26 18:57 ` [PATCH v2 net-next 6/6] sfc: bare bones TC offload on EF100 ecree
2022-09-28 8:50 ` [PATCH v2 net-next 0/6] sfc: bare bones TC offload patchwork-bot+netdevbpf
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=20220928120754.5671c0d7@kernel.org \
--to=kuba@kernel.org \
--cc=davem@davemloft.net \
--cc=ecree.xilinx@gmail.com \
--cc=edumazet@google.com \
--cc=habetsm.xilinx@gmail.com \
--cc=linux-net-drivers@amd.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.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).