From: Donald Hunter <donald.hunter@gmail.com>
To: Jakub Kicinski <kuba@kernel.org>
Cc: netdev@vger.kernel.org, "David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>, Jiri Pirko <jiri@resnulli.us>,
Jacob Keller <jacob.e.keller@intel.com>,
Pablo Neira Ayuso <pablo@netfilter.org>,
Jozsef Kadlecsik <kadlec@netfilter.org>,
netfilter-devel@vger.kernel.org, coreteam@netfilter.org,
donald.hunter@redhat.com
Subject: Re: [PATCH net-next v3 3/4] tools/net/ynl: Handle acks that use req_value
Date: Wed, 17 Apr 2024 13:51:38 +0100 [thread overview]
Message-ID: <m2mspsgnj9.fsf@gmail.com> (raw)
In-Reply-To: <20240416191016.5072e144@kernel.org> (Jakub Kicinski's message of "Tue, 16 Apr 2024 19:10:16 -0700")
Jakub Kicinski <kuba@kernel.org> writes:
> On Tue, 16 Apr 2024 20:32:14 +0100 Donald Hunter wrote:
>> The nfnetlink family uses the directional op model but errors get
>> reported using the request value instead of the reply value.
>
> What's an error in this case ? "Normal" errors come via NLMSG_ERROR
Thanks for pointing out what should have been obvious. Looking at it
again today, I realise I missed the root cause which was a bug in the
extack decoding for directional ops. When I fix that issue, this patch
can be dropped.
>> diff --git a/tools/net/ynl/lib/nlspec.py b/tools/net/ynl/lib/nlspec.py
>> index 6d08ab9e213f..04085bc6365e 100644
>> --- a/tools/net/ynl/lib/nlspec.py
>> +++ b/tools/net/ynl/lib/nlspec.py
>> @@ -567,6 +567,18 @@ class SpecFamily(SpecElement):
>> return op
>> return None
>>
>> + def get_op_by_value(self, value):
>> + """
>> + For a given operation value, look up operation spec. Search
>> + by response value first then fall back to request value. This
>> + is required for handling failure cases.
>
> Looks like we're only going to need it in NetlinkProtocol, so that's
> fine. But let's somehow call out that this is a bit of a hack, so that
> people don't feel like this is the more correct way of finding the op
> than direct access to rsp_by_value[].
next prev parent reply other threads:[~2024-04-17 12:52 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-16 19:32 [PATCH net-next v3 0/4] netlink: Add nftables spec w/ multi messages Donald Hunter
2024-04-16 19:32 ` [PATCH net-next v3 1/4] doc/netlink/specs: Add draft nftables spec Donald Hunter
2024-04-16 19:32 ` [PATCH net-next v3 2/4] tools/net/ynl: Add multi message support to ynl Donald Hunter
2024-04-16 19:32 ` [PATCH net-next v3 3/4] tools/net/ynl: Handle acks that use req_value Donald Hunter
2024-04-17 2:10 ` Jakub Kicinski
2024-04-17 12:51 ` Donald Hunter [this message]
2024-04-17 13:50 ` Jakub Kicinski
2024-04-16 19:32 ` [PATCH net-next v3 4/4] netfilter: nfnetlink: Handle ACK flags for batch messages Donald Hunter
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=m2mspsgnj9.fsf@gmail.com \
--to=donald.hunter@gmail.com \
--cc=coreteam@netfilter.org \
--cc=davem@davemloft.net \
--cc=donald.hunter@redhat.com \
--cc=edumazet@google.com \
--cc=jacob.e.keller@intel.com \
--cc=jiri@resnulli.us \
--cc=kadlec@netfilter.org \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=pablo@netfilter.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.