Building ar71xx currently fails with:
In file included from ./include/linux/ipv6.h:5,
from ./include/net/ipv6.h:16,
from ./include/net/inetpeer.h:16,
from ./include/net/ip_fib.h:24,
from ./include/net/switchdev.h:17,
from ./include/net/dsa.h:23,
from arch/mips/ath79/dev-dsa.h:15,
from arch/mips/ath79/dev-dsa.c:17:
./include/uapi/linux/ipv6.h:107:1: error: alignment 1 of 'struct ipv6_destopt_hao' is less than 2 [-Werror=packed-not-aligned]
} __attribute__((packed));
Address this issue by correcting the alignment of the struct packing
pragma accordingly.
Fixes: FS#1805
Reported-by: Pascal Ernster <git@hardfalcon.net>
[reword subject, rewrap commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
struct ip_auth_hdr {
--- a/include/uapi/linux/ipv6.h
+++ b/include/uapi/linux/ipv6.h
+@@ -104,7 +104,7 @@ struct ipv6_destopt_hao {
+ __u8 type;
+ __u8 length;
+ struct in6_addr addr;
+-} __attribute__((packed));
++} __attribute__((packed, aligned(2)));
+
+ /*
+ * IPv6 fixed header
@@ -131,7 +131,7 @@ struct ipv6hdr {
struct in6_addr saddr;