[PATCH 21.11] net/af_xdp: squash deprecated-declaration warnings

Kevin Traynor ktraynor at redhat.com
Wed Apr 5 10:45:32 CEST 2023


On 05/04/2023 08:39, David Marchand wrote:
> On Tue, Apr 4, 2023 at 5:35 PM Kevin Traynor <ktraynor at redhat.com> wrote:
>>
>> Fedora 37 with versions libbpf-0.8.0-2.fc37.x86_64 and
>> libxdp-1.2.6-1.fc37.x86_64 gives the following warnings [0].
>>
>> Squash these for a clean build on Fedora 37 and any other distros
>> or systems using newer libbpf and libxdp versions.
>>
>> Discussed on mail list at:
>> http://inbox.dpdk.org/dev/d718d0fe-09a2-8840-e8a4-dd41b732b391@redhat.com/
>>
>> [0]
>> ../drivers/net/af_xdp/rte_eth_af_xdp.c:853:9:
>> warning: ‘bpf_get_link_xdp_id’ is deprecated:
>> libbpf v0.8+: use bpf_xdp_query_id() instead [-Wdeprecated-declarations]
>> |      if (bpf_get_link_xdp_id(internals->if_index, &curr_prog_id,
>> |      ^~
>> In file included from /usr/include/xdp/xsk.h:17,
>>                   from ../drivers/net/af_xdp/compat.h:6,
>>                   from ../drivers/net/af_xdp/rte_eth_af_xdp.c:41:
>> /usr/include/bpf/libbpf.h:1169:16: note: declared here
>> | LIBBPF_API int bpf_get_link_xdp_id(int ifindex, __u32 *prog_id, __u32 flags);
>> |                ^~~~~~~~~~~~~~~~~~~
>> ../drivers/net/af_xdp/rte_eth_af_xdp.c:858:9:
>> warning: ‘bpf_set_link_xdp_fd’ is deprecated:
>> libbpf v0.8+: use bpf_xdp_attach() instead [-Wdeprecated-declarations]
>> |         bpf_set_link_xdp_fd(internals->if_index, -1,
>> |         ^~~~~~~~~~~~~~~~~~~
>> /usr/include/bpf/libbpf.h:1164:16: note: declared here
>> | LIBBPF_API int bpf_set_link_xdp_fd(int ifindex, int fd, __u32 flags);
>> |                ^~~~~~~~~~~~~~~~~~~
>> ../drivers/net/af_xdp/rte_eth_af_xdp.c: In function ‘load_custom_xdp_prog’:
>> ../drivers/net/af_xdp/rte_eth_af_xdp.c:1171:9:
>> warning: ‘bpf_set_link_xdp_fd’ is deprecated:
>> libbpf v0.8+: use bpf_xdp_attach() instead [-Wdeprecated-declarations]
>> |         ret = bpf_set_link_xdp_fd(if_index, prog_fd,
>> |         ^~~
>> /usr/include/bpf/libbpf.h:1164:16: note: declared here
>> | LIBBPF_API int bpf_set_link_xdp_fd(int ifindex, int fd, __u32 flags);
>> |                ^~~~~~~~~~~~~~~~~~~
>>
>> Cc: Ciara Loftus <ciara.loftus at intel.com>
>> Cc: Qi Zhang <qi.z.zhang at intel.com>
>> Signed-off-by: Kevin Traynor <ktraynor at redhat.com>
>> ---
>>   drivers/net/af_xdp/rte_eth_af_xdp.c | 18 ++++++++++++++++++
>>   1 file changed, 18 insertions(+)
>>
>> diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c b/drivers/net/af_xdp/rte_eth_af_xdp.c
>> index 9db76d4562..b04aa30325 100644
>> --- a/drivers/net/af_xdp/rte_eth_af_xdp.c
>> +++ b/drivers/net/af_xdp/rte_eth_af_xdp.c
>> @@ -846,4 +846,10 @@ eth_stats_reset(struct rte_eth_dev *dev)
>>   }
>>
>> +#pragma GCC diagnostic push
>> +#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
>> +#pragma GCC diagnostic ignored "-Wunknown-pragmas"
>> +#pragma clang diagnostic push
>> +#pragma clang diagnostic ignored "-Wdeprecated-declarations"
> 
> clang recognises GCC pragmas, so this clang pragma is unneeded.
> https://clang.llvm.org/docs/UsersManual.html#id34
> 
> And I suspect disabling unknown-pragmas is unneeded once clang pragmas
> are removed.
> 
> 

hmm, ok thanks, I will re-check. I saw the warning after applying the 
GCC one, but it was with test-meson-builds, so perhaps I confused with 
the ABI reference build.

Yes, unknown-pragmas could be removed if the clang pragma is unneeded.



More information about the stable mailing list