ANDROID: CRC ABI fixups in ip.h and ipv6.h

In commit 6e9334436d ("net: use struct_group to copy ip/ipv6 header
addresses"), struct_group() is added to some structures to resolve a
build warning.  This changes the CRC of a number of networking
functions, without changing any actual structure sizes or interactions.
To resolve this, use __GENKSYMS__ #ifdef hack to preserve the Android
kernel CRC abi.

Bug: 161946584
Fixes: 6e9334436d ("net: use struct_group to copy ip/ipv6 header addresses")
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ia70eb3aa41316fbced713c99c85ddaeccec2ffec
This commit is contained in:
Greg Kroah-Hartman
2022-12-04 12:09:47 +00:00
parent d9b90a99f3
commit 37d3df60cb
2 changed files with 8 additions and 0 deletions

View File

@@ -100,10 +100,14 @@ struct iphdr {
__u8 ttl; __u8 ttl;
__u8 protocol; __u8 protocol;
__sum16 check; __sum16 check;
#ifndef __GENKSYMS__
__struct_group(/* no tag */, addrs, /* no attrs */, __struct_group(/* no tag */, addrs, /* no attrs */,
#endif
__be32 saddr; __be32 saddr;
__be32 daddr; __be32 daddr;
#ifndef __GENKSYMS__
); );
#endif
/*The options start here. */ /*The options start here. */
}; };

View File

@@ -130,10 +130,14 @@ struct ipv6hdr {
__u8 nexthdr; __u8 nexthdr;
__u8 hop_limit; __u8 hop_limit;
#ifndef __GENKSYMS__
__struct_group(/* no tag */, addrs, /* no attrs */, __struct_group(/* no tag */, addrs, /* no attrs */,
#endif
struct in6_addr saddr; struct in6_addr saddr;
struct in6_addr daddr; struct in6_addr daddr;
#ifndef __GENKSYMS__
); );
#endif
}; };