On 10/17/22 17:11, Manickavel Subramani wrote:
> I been have issue with building ovs with afxdp enabled on ubuntu.
> Distributor ID: Ubuntu
> Description:    Ubuntu 22.04.1 LTS
> Release:        22.04
> Codename:       jammy
> 
> I just followed the steps listed in the Open vSwitch with AF_XDP
> https://docs.openvswitch.org/en/latest/intro/install/afxdp/
> 
> 
> When I run the command ./ovs/.configure --enable-afxdp
> checking for capng_clear in -lcap-ng... no
> configure: WARNING: cannot find libcap-ng.
> --user option will not be supported on Linux.
> (you may use --disable-libcapng to suppress this warning).
> checking for Python 3 (version 3.4 or later)... /usr/bin/python3
> checking for flake8... no
> checking for sphinx-build-3... no
> checking for sphinx-build-2... no
> checking for sphinx-build... no
> checking for dot... yes
> checking for net/if_dl.h... no
> checking whether strtok_r macro segfaults on some inputs... no
> checking whether AF_XDP is enabled... yes
> checking for bpf/libbpf.h... yes
> checking for linux/if_xdp.h... yes
> checking for bpf/xsk.h... no
> configure: error: unable to find bpf/xsk.h for AF_XDP support
> root@ffsdemo9:~/ovs#
> 
> 
> 
> 
> I see following error in config.log file
> configure:19717: gcc -c -g -O2  conftest.c >&5
> configure:19717: $? = 0
> configure:19717: result: yes
> configure:19726: checking for bpf/xsk.h
> configure:19726: gcc -c -g -O2  conftest.c >&5
> In file included from conftest.c:75:
> /usr/include/bpf/xsk.h:32:26: error: field 'node' has incomplete type
>    32 |         struct list_head node;
>       |                          ^~~~
> /usr/include/bpf/xsk.h:34:31: error: expected ':', ',', ';', '}' or 
> '__attribute__' before '*' token
>    34 |         struct xdp_sock __rcu **map_entry;
>       |                               ^
> /usr/include/bpf/xsk.h:43:52: error: expected ';', ',' or ')' before '*' token
>    43 |                              struct xdp_sock __rcu **map_entry);
>       |                                                    ^
> /usr/include/bpf/xsk.h:44:52: error: unknown type name 'u16'
>    44 | void xsk_clear_pool_at_qid(struct net_device *dev, u16 queue_id);
>       |                                                    ^~~
> /usr/include/bpf/xsk.h:46:25: error: unknown type name 'u16'
>    46 |                         u16 queue_id);
>       |                         ^~~
> configure:19726: $? = 1
> configure: failed program was:
> | /* confdefs.h */


This doesn't look like xsk.h header from libbpf, but it looks like
kernel's internal xsk.h instead.  I'm not sure how you end up
installing that header to the /usr/include/, it should not be there.

If you copied this header from the kernel, undo that.
On Ubuntu you may install libbpf-dev package instead of building
libbpf from kernel sources.

Best regards, Ilya Maximets.

> 
> Please help to figure out the issue
> 
> Regard
> Vel..


_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to