Message ID | 20240408130927.78594-4-ast@fiberby.net (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | flower: validate control flags | expand |
On April 8, 2024 9:09 PM, Asbjørn wrote: >This helper can be used by drivers, that doesn't support any control flags, to >reject any attempt to install rules with control flags. > >This is aimed at drivers, which uses flow_rule_match_control(), but doesn't >implement any control flags. > >Only compile-tested. > >Signed-off-by: Asbjørn Sloth Tønnesen <ast@fiberby.net> >--- > include/net/flow_offload.h | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > >diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h index >c1317b14da08c..415d225204a1f 100644 >--- a/include/net/flow_offload.h >+++ b/include/net/flow_offload.h >@@ -471,6 +471,19 @@ static inline bool >flow_rule_no_unsupp_control_flags(const u32 supp_flags, > return false; > } > >+/** >+ * flow_rule_no_control_flags() - check for presence of any control >+flags >+ * @flags: flags present in rule >+ * @extack: The netlink extended ACK for reporting errors. >+ * >+ * Returns true if no control flags are set, false otherwise. >+ */ >+static inline bool flow_rule_no_control_flags(const u32 flags, >+ struct netlink_ext_ack *extack) { >+ return flow_rule_no_unsupp_control_flags(0, flags, extack); } >+ How about to squash this change with series I patch since they have similar functions for driver to use. > struct flow_stats { > u64 pkts; > u64 bytes; >-- >2.43.0
Hi Baowen, On 4/9/24 2:09 AM, Baowen Zheng wrote: > On April 8, 2024 9:09 PM, Asbjørn wrote: > >> This helper can be used by drivers, that doesn't support any control flags, to >> reject any attempt to install rules with control flags. >> >> This is aimed at drivers, which uses flow_rule_match_control(), but doesn't >> implement any control flags. >> >> Only compile-tested. >> >> Signed-off-by: Asbjørn Sloth Tønnesen <ast@fiberby.net> >> --- >> include/net/flow_offload.h | 13 +++++++++++++ >> 1 file changed, 13 insertions(+) >> >> diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h index >> c1317b14da08c..415d225204a1f 100644 >> --- a/include/net/flow_offload.h >> +++ b/include/net/flow_offload.h >> @@ -471,6 +471,19 @@ static inline bool >> flow_rule_no_unsupp_control_flags(const u32 supp_flags, >> return false; >> } >> >> +/** >> + * flow_rule_no_control_flags() - check for presence of any control >> +flags >> + * @flags: flags present in rule >> + * @extack: The netlink extended ACK for reporting errors. >> + * >> + * Returns true if no control flags are set, false otherwise. >> + */ >> +static inline bool flow_rule_no_control_flags(const u32 flags, >> + struct netlink_ext_ack *extack) { >> + return flow_rule_no_unsupp_control_flags(0, flags, extack); } >> + > How about to squash this change with series I patch since they have similar functions for driver to use. Do you have a link to the series, couldn't find it on the netdev list.
>> On April 8, 2024 9:09 PM, Asbjørn wrote: >> >>> This helper can be used by drivers, that doesn't support any control >>> flags, to reject any attempt to install rules with control flags. >>> >>> This is aimed at drivers, which uses flow_rule_match_control(), but >>> doesn't implement any control flags. >>> >>> Only compile-tested. >>> >>> Signed-off-by: Asbjørn Sloth Tønnesen <ast@fiberby.net> >>> --- >>> include/net/flow_offload.h | 13 +++++++++++++ >>> 1 file changed, 13 insertions(+) >>> >>> diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h >>> index c1317b14da08c..415d225204a1f 100644 >>> --- a/include/net/flow_offload.h >>> +++ b/include/net/flow_offload.h >>> @@ -471,6 +471,19 @@ static inline bool >>> flow_rule_no_unsupp_control_flags(const u32 supp_flags, >>> return false; >>> } >>> >>> +/** >>> + * flow_rule_no_control_flags() - check for presence of any control >>> +flags >>> + * @flags: flags present in rule >>> + * @extack: The netlink extended ACK for reporting errors. >>> + * >>> + * Returns true if no control flags are set, false otherwise. >>> + */ >>> +static inline bool flow_rule_no_control_flags(const u32 flags, >>> + struct netlink_ext_ack *extack) { >>> + return flow_rule_no_unsupp_control_flags(0, flags, extack); } >>> + >> How about to squash this change with series I patch since they have similar >functions for driver to use. > >Do you have a link to the series, couldn't find it on the netdev list. Sorry for confusing you. I mean if you can squash this change with your first patch which introduce the function of flow_rule_no_unsupp_control_flags. > >-- >Best regards >Asbjørn Sloth Tønnesen >Network Engineer >Fiberby - AS42541
diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h index c1317b14da08c..415d225204a1f 100644 --- a/include/net/flow_offload.h +++ b/include/net/flow_offload.h @@ -471,6 +471,19 @@ static inline bool flow_rule_no_unsupp_control_flags(const u32 supp_flags, return false; } +/** + * flow_rule_no_control_flags() - check for presence of any control flags + * @flags: flags present in rule + * @extack: The netlink extended ACK for reporting errors. + * + * Returns true if no control flags are set, false otherwise. + */ +static inline bool flow_rule_no_control_flags(const u32 flags, + struct netlink_ext_ack *extack) +{ + return flow_rule_no_unsupp_control_flags(0, flags, extack); +} + struct flow_stats { u64 pkts; u64 bytes;
This helper can be used by drivers, that doesn't support any control flags, to reject any attempt to install rules with control flags. This is aimed at drivers, which uses flow_rule_match_control(), but doesn't implement any control flags. Only compile-tested. Signed-off-by: Asbjørn Sloth Tønnesen <ast@fiberby.net> --- include/net/flow_offload.h | 13 +++++++++++++ 1 file changed, 13 insertions(+)