From 7364575996e09c77f24b4f5f69c7d3259e130bed Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sun, 4 Dec 2022 12:09:47 +0000 Subject: [PATCH] ANDROID: CRC ABI fixups in ip.h and ipv6.h In commit 6e9334436d78 ("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. This also requires an update of the .xml representation to handle the new union structure properly, as the abi report shows the following expected change: type 'struct iphdr' changed member changed from '__be32 saddr' to 'union { struct { __be32 saddr; __be32 daddr; }; struct { __be32 saddr; __be32 daddr; } addrs; }' type changed from '__be32' = '__u32' = 'unsigned int' to 'union { struct { __be32 saddr; __be32 daddr; }; struct { __be32 saddr; __be32 daddr; } addrs; }' resolved type changed from 'unsigned int' to 'union { struct { __be32 saddr; __be32 daddr; }; struct { __be32 saddr; __be32 daddr; } addrs; }' member '__be32 daddr' was removed Bug: 161946584 Fixes: 6e9334436d78 ("net: use struct_group to copy ip/ipv6 header addresses") Signed-off-by: Greg Kroah-Hartman Change-Id: Ia70eb3aa41316fbced713c99c85ddaeccec2ffec --- android/abi_gki_aarch64.xml | 675 ++++++++++++++++++------------------ include/uapi/linux/ip.h | 4 + include/uapi/linux/ipv6.h | 4 + 3 files changed, 352 insertions(+), 331 deletions(-) diff --git a/android/abi_gki_aarch64.xml b/android/abi_gki_aarch64.xml index cded905d16e0..908e9602bdee 100644 --- a/android/abi_gki_aarch64.xml +++ b/android/abi_gki_aarch64.xml @@ -4779,7 +4779,7 @@ - + @@ -9252,7 +9252,7 @@ - + @@ -14160,7 +14160,7 @@ - + @@ -14369,7 +14369,7 @@ - + @@ -15592,10 +15592,7 @@ - - - - + @@ -16817,7 +16814,7 @@ - + @@ -19114,7 +19111,7 @@ - + @@ -24437,7 +24434,7 @@ - + @@ -26942,7 +26939,7 @@ - + @@ -28899,7 +28896,7 @@ - + @@ -30827,7 +30824,7 @@ - + @@ -32110,7 +32107,7 @@ - + @@ -32242,7 +32239,7 @@ - + @@ -36371,7 +36368,7 @@ - + @@ -43716,7 +43713,7 @@ - + @@ -56111,7 +56108,7 @@ - + @@ -56241,7 +56238,7 @@ - + @@ -57088,7 +57085,7 @@ - + @@ -57592,7 +57589,7 @@ - + @@ -63129,7 +63126,7 @@ - + @@ -63929,7 +63926,7 @@ - + @@ -66816,7 +66813,7 @@ - + @@ -68580,10 +68577,10 @@ - + - + @@ -71284,7 +71281,7 @@ - + @@ -71292,7 +71289,7 @@ - + @@ -71402,7 +71399,7 @@ - + @@ -71410,7 +71407,7 @@ - + @@ -71418,10 +71415,10 @@ - + - + @@ -71466,34 +71463,34 @@ - + - + - + - + - + - + - + - + - + - + @@ -71555,15 +71552,15 @@ - + - + - + @@ -71571,7 +71568,7 @@ - + @@ -71607,7 +71604,7 @@ - + @@ -71615,7 +71612,7 @@ - + @@ -71631,10 +71628,10 @@ - + - + @@ -71746,16 +71743,16 @@ - + - + - + - + @@ -71825,7 +71822,7 @@ - + @@ -71836,10 +71833,10 @@ - + - + @@ -71964,18 +71961,18 @@ - + - + - + - + @@ -73317,7 +73314,15 @@ - + + + + + + + + + @@ -73328,38 +73333,38 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -73368,15 +73373,15 @@ - + - + - + @@ -73384,7 +73389,7 @@ - + @@ -73392,101 +73397,101 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -73494,38 +73499,38 @@ - + - + - + - + - + - + - + - + - + - + @@ -73533,7 +73538,7 @@ - + @@ -73541,7 +73546,7 @@ - + @@ -73549,7 +73554,7 @@ - + @@ -73557,7 +73562,7 @@ - + @@ -73565,7 +73570,7 @@ - + @@ -73573,7 +73578,7 @@ - + @@ -73584,7 +73589,7 @@ - + @@ -73592,7 +73597,7 @@ - + @@ -78153,7 +78158,7 @@ - + @@ -87771,7 +87776,7 @@ - + @@ -89371,7 +89376,7 @@ - + @@ -92438,7 +92443,7 @@ - + @@ -93548,7 +93553,7 @@ - + @@ -95420,7 +95425,7 @@ - + @@ -96589,7 +96594,7 @@ - + @@ -98790,7 +98795,18 @@ - + + + + + + + + + + + + @@ -98798,7 +98814,7 @@ - + @@ -98806,7 +98822,7 @@ - + @@ -98814,7 +98830,7 @@ - + @@ -98822,7 +98838,7 @@ - + @@ -98836,7 +98852,7 @@ - + @@ -98853,7 +98869,7 @@ - + @@ -98861,7 +98877,7 @@ - + @@ -98890,7 +98906,7 @@ - + @@ -98898,7 +98914,7 @@ - + @@ -98906,7 +98922,7 @@ - + @@ -98920,7 +98936,7 @@ - + @@ -98931,7 +98947,7 @@ - + @@ -98939,7 +98955,7 @@ - + @@ -98947,17 +98963,17 @@ - + - + - + @@ -98992,7 +99008,7 @@ - + @@ -99003,7 +99019,7 @@ - + @@ -99011,7 +99027,7 @@ - + @@ -99019,7 +99035,7 @@ - + @@ -99030,7 +99046,7 @@ - + @@ -99044,7 +99060,7 @@ - + @@ -99052,7 +99068,7 @@ - + @@ -99060,7 +99076,7 @@ - + @@ -99068,7 +99084,7 @@ - + @@ -99076,7 +99092,7 @@ - + @@ -99084,7 +99100,7 @@ - + @@ -99131,7 +99147,7 @@ - + @@ -99142,7 +99158,7 @@ - + @@ -99162,7 +99178,7 @@ - + @@ -99185,7 +99201,7 @@ - + @@ -99205,26 +99221,26 @@ - + - + - + - + - + @@ -99238,7 +99254,7 @@ - + @@ -99246,7 +99262,7 @@ - + @@ -99266,7 +99282,7 @@ - + @@ -99289,7 +99305,7 @@ - + @@ -99297,7 +99313,7 @@ - + @@ -99305,7 +99321,7 @@ - + @@ -99313,7 +99329,7 @@ - + @@ -99321,7 +99337,7 @@ - + @@ -99347,17 +99363,17 @@ - + - + - + @@ -99365,17 +99381,17 @@ - + - + - + @@ -99392,17 +99408,6 @@ - - - - - - - - - - - @@ -101173,7 +101178,15 @@ - + + + + + + + + + @@ -101190,7 +101203,7 @@ - + @@ -101198,7 +101211,7 @@ - + @@ -101206,12 +101219,12 @@ - + - + @@ -101219,7 +101232,7 @@ - + @@ -101227,9 +101240,9 @@ - + - + @@ -101244,12 +101257,12 @@ - + - + @@ -101275,7 +101288,7 @@ - + @@ -101286,7 +101299,7 @@ - + @@ -101306,7 +101319,7 @@ - + @@ -101329,7 +101342,7 @@ - + @@ -101343,12 +101356,12 @@ - + - + @@ -101359,7 +101372,7 @@ - + @@ -101373,7 +101386,7 @@ - + @@ -101384,7 +101397,7 @@ - + @@ -101398,7 +101411,7 @@ - + @@ -101412,20 +101425,20 @@ - + - + - + - + @@ -101439,7 +101452,7 @@ - + @@ -101447,7 +101460,7 @@ - + @@ -101458,7 +101471,7 @@ - + @@ -101475,7 +101488,7 @@ - + @@ -101495,7 +101508,7 @@ - + @@ -101512,7 +101525,7 @@ - + @@ -101523,7 +101536,7 @@ - + @@ -101531,7 +101544,7 @@ - + @@ -101539,7 +101552,7 @@ - + @@ -101547,7 +101560,7 @@ - + @@ -101561,7 +101574,7 @@ - + @@ -101569,7 +101582,7 @@ - + @@ -101580,7 +101593,7 @@ - + @@ -101597,7 +101610,7 @@ - + @@ -101623,7 +101636,7 @@ - + @@ -101634,7 +101647,7 @@ - + @@ -101645,7 +101658,7 @@ - + @@ -102238,7 +102251,7 @@ - + @@ -102410,7 +102423,7 @@ - + @@ -105147,7 +105160,7 @@ - + @@ -109590,7 +109603,7 @@ - + @@ -112437,8 +112450,8 @@ - - + + @@ -114219,12 +114232,12 @@ - - - - - - + + + + + + @@ -115384,25 +115397,25 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - + + + + + + @@ -115444,9 +115457,9 @@ - - - + + + @@ -115457,9 +115470,9 @@ - - - + + + @@ -115524,9 +115537,9 @@ - - - + + + @@ -120784,9 +120797,9 @@ - - - + + + @@ -123971,24 +123984,24 @@ - - + + - - + + - - + + - - + + @@ -124027,26 +124040,26 @@ - - + + - - - + + + - - - - - + + + + + - - - - + + + + @@ -124094,8 +124107,8 @@ - - + + @@ -126646,8 +126659,8 @@ - - + + @@ -127069,19 +127082,19 @@ - - - + + + - - - + + + - - - + + + @@ -128271,10 +128284,10 @@ - - - - + + + + @@ -128330,11 +128343,11 @@ - - - - - + + + + + @@ -128342,9 +128355,9 @@ - - - + + + @@ -132298,9 +132311,9 @@ - - - + + + diff --git a/include/uapi/linux/ip.h b/include/uapi/linux/ip.h index d2f143393780..64beb32a2102 100644 --- a/include/uapi/linux/ip.h +++ b/include/uapi/linux/ip.h @@ -100,10 +100,14 @@ struct iphdr { __u8 ttl; __u8 protocol; __sum16 check; +#ifndef __GENKSYMS__ __struct_group(/* no tag */, addrs, /* no attrs */, +#endif __be32 saddr; __be32 daddr; +#ifndef __GENKSYMS__ ); +#endif /*The options start here. */ }; diff --git a/include/uapi/linux/ipv6.h b/include/uapi/linux/ipv6.h index 766ab5c8ee65..bfe9542953af 100644 --- a/include/uapi/linux/ipv6.h +++ b/include/uapi/linux/ipv6.h @@ -130,10 +130,14 @@ struct ipv6hdr { __u8 nexthdr; __u8 hop_limit; +#ifndef __GENKSYMS__ __struct_group(/* no tag */, addrs, /* no attrs */, +#endif struct in6_addr saddr; struct in6_addr daddr; +#ifndef __GENKSYMS__ ); +#endif };