net/tap: fix compilation issue glibc < 2.24
Checks
Commit Message
When trying to compile with glibc < 2.24 that doesn't
support SOL_NETLINK it will cause compilation failure:
drivers/net/tap/tap_netlink.c:70:17: error:
'SOL_NETLINK' undeclared (first use in this function)
setsockopt(fd, SOL_NETLINK, NETLINK_EXT_ACK, &one, sizeof(one));
Fixes: b9cf1a882820 ("net/tap: use netlink extended ack support")
Cc: stephen@networkplumber.org
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
---
drivers/net/tap/tap_netlink.c | 5 +++++
1 file changed, 5 insertions(+)
Comments
On 5/10/2020 1:23 PM, Raslan Darawsheh wrote:
> When trying to compile with glibc < 2.24 that doesn't
> support SOL_NETLINK it will cause compilation failure:
>
> drivers/net/tap/tap_netlink.c:70:17: error:
> 'SOL_NETLINK' undeclared (first use in this function)
> setsockopt(fd, SOL_NETLINK, NETLINK_EXT_ACK, &one, sizeof(one));
>
> Fixes: b9cf1a882820 ("net/tap: use netlink extended ack support")
> Cc: stephen@networkplumber.org
>
> Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
> ---
> drivers/net/tap/tap_netlink.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/drivers/net/tap/tap_netlink.c b/drivers/net/tap/tap_netlink.c
> index b73802b51..dcd7ab99b 100644
> --- a/drivers/net/tap/tap_netlink.c
> +++ b/drivers/net/tap/tap_netlink.c
> @@ -17,6 +17,11 @@
>
> #include "tap_log.h"
>
> +/*define SOL_NETLINK for old kernels usage. */
> +#ifndef SOL_NETLINK
> +#define SOL_NETLINK 270
> +#endif
> +
> /* Must be quite large to support dumping a huge list of QDISC or filters. */
> #define BUF_SIZE (32 * 1024) /* Size of the buffer to receive kernel messages */
> #define SNDBUF_SIZE 32768 /* Send buffer size for the netlink socket */
>
(relevant glibc commit provided added to commit log)
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Applied to dpdk-next-net/master, thanks.
@@ -17,6 +17,11 @@
#include "tap_log.h"
+/*define SOL_NETLINK for old kernels usage. */
+#ifndef SOL_NETLINK
+#define SOL_NETLINK 270
+#endif
+
/* Must be quite large to support dumping a huge list of QDISC or filters. */
#define BUF_SIZE (32 * 1024) /* Size of the buffer to receive kernel messages */
#define SNDBUF_SIZE 32768 /* Send buffer size for the netlink socket */