mirror of
https://github.com/hardkernel/linux.git
synced 2026-03-25 12:00:22 +09:00
ANDROID: GKI: fix crc issue in include/net/addrconf.h
In commit9846d8c8c3("net: ipv6: support reporting otherwise unknown prefix flags in RTM_NEWPREFIX") a union is added to fix some issues, but that messes with the crc of a number of networking symbols for obvious reasons. As this does not actually change the abi at all, use some GENKSYMS magic #define logic to preserve the crc so that all is well. Updates the .stg file with the following structure change that is abi-safe: type 'struct prefix_info' changed member 'union { __u8 flags; struct { __u8 reserved; __u8 autoconf; __u8 onlink; }; }' was added member '__u8 reserved' was removed member '__u8 autoconf' was removed member '__u8 onlink' was removed Bug: 161946584 Fixes:9846d8c8c3("net: ipv6: support reporting otherwise unknown prefix flags in RTM_NEWPREFIX") Cc: Maciej Żenczykowski <maze@google.com> Cc: Lorenzo Colitti <lorenzo@google.com> Change-Id: I9d2df74e8f3ae60425534f1b33d50b2bc444f7f5 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
@@ -35315,6 +35315,10 @@ member {
|
||||
id: 0x22e86cdc
|
||||
type_id: 0x048fc360
|
||||
}
|
||||
member {
|
||||
id: 0x23531e28
|
||||
type_id: 0x026208b2
|
||||
}
|
||||
member {
|
||||
id: 0x2380a48f
|
||||
type_id: 0x012ce22f
|
||||
@@ -36062,6 +36066,11 @@ member {
|
||||
id: 0x34a07023
|
||||
type_id: 0x5dafb09e
|
||||
}
|
||||
member {
|
||||
id: 0x34aaae1a
|
||||
type_id: 0x5d84d1ff
|
||||
offset: 24
|
||||
}
|
||||
member {
|
||||
id: 0x34adb3c9
|
||||
type_id: 0x5d98acb2
|
||||
@@ -46283,10 +46292,10 @@ member {
|
||||
offset: 160
|
||||
}
|
||||
member {
|
||||
id: 0xb2dd57f2
|
||||
id: 0xb2dd5b41
|
||||
name: "autoconf"
|
||||
type_id: 0xb3e7bac9
|
||||
offset: 30
|
||||
offset: 6
|
||||
bitsize: 1
|
||||
}
|
||||
member {
|
||||
@@ -128916,10 +128925,10 @@ member {
|
||||
offset: 9920
|
||||
}
|
||||
member {
|
||||
id: 0x7adb50ba
|
||||
id: 0x7adb5caf
|
||||
name: "onlink"
|
||||
type_id: 0xb3e7bac9
|
||||
offset: 31
|
||||
offset: 7
|
||||
bitsize: 1
|
||||
}
|
||||
member {
|
||||
@@ -150440,10 +150449,9 @@ member {
|
||||
bitsize: 40
|
||||
}
|
||||
member {
|
||||
id: 0x688b9047
|
||||
id: 0x688b9626
|
||||
name: "reserved"
|
||||
type_id: 0xb3e7bac9
|
||||
offset: 24
|
||||
bitsize: 6
|
||||
}
|
||||
member {
|
||||
@@ -191158,6 +191166,16 @@ struct_union {
|
||||
member_id: 0x2d8a4e32
|
||||
}
|
||||
}
|
||||
struct_union {
|
||||
id: 0x026208b2
|
||||
kind: STRUCT
|
||||
definition {
|
||||
bytesize: 1
|
||||
member_id: 0x688b9626
|
||||
member_id: 0xb2dd5b41
|
||||
member_id: 0x7adb5caf
|
||||
}
|
||||
}
|
||||
struct_union {
|
||||
id: 0x02c70092
|
||||
kind: STRUCT
|
||||
@@ -195572,6 +195590,15 @@ struct_union {
|
||||
member_id: 0x8c9fd173
|
||||
}
|
||||
}
|
||||
struct_union {
|
||||
id: 0x5d84d1ff
|
||||
kind: UNION
|
||||
definition {
|
||||
bytesize: 1
|
||||
member_id: 0x2ddb63e4
|
||||
member_id: 0x23531e28
|
||||
}
|
||||
}
|
||||
struct_union {
|
||||
id: 0x5d98acb2
|
||||
kind: UNION
|
||||
@@ -227095,9 +227122,7 @@ struct_union {
|
||||
member_id: 0x5ce532c4
|
||||
member_id: 0xb5de8e04
|
||||
member_id: 0x2165da89
|
||||
member_id: 0x688b9047
|
||||
member_id: 0xb2dd57f2
|
||||
member_id: 0x7adb50ba
|
||||
member_id: 0x34aaae1a
|
||||
member_id: 0xe91a1d71
|
||||
member_id: 0xbada6e7d
|
||||
member_id: 0x08cabd3c
|
||||
|
||||
@@ -31,9 +31,15 @@ struct prefix_info {
|
||||
__u8 length;
|
||||
__u8 prefix_len;
|
||||
|
||||
/*
|
||||
* ANDROID: crc fix for commit 9354e0acdb74 ("net: ipv6: support
|
||||
* reporting otherwise unknown prefix * flags in RTM_NEWPREFIX")
|
||||
*/
|
||||
#ifndef __GENKSYMS__
|
||||
union __packed {
|
||||
__u8 flags;
|
||||
struct __packed {
|
||||
#endif
|
||||
#if defined(__BIG_ENDIAN_BITFIELD)
|
||||
__u8 onlink : 1,
|
||||
autoconf : 1,
|
||||
@@ -45,8 +51,10 @@ struct prefix_info {
|
||||
#else
|
||||
#error "Please fix <asm/byteorder.h>"
|
||||
#endif
|
||||
#ifndef __GENKSYMS__
|
||||
};
|
||||
};
|
||||
#endif
|
||||
__be32 valid;
|
||||
__be32 prefered;
|
||||
__be32 reserved2;
|
||||
|
||||
Reference in New Issue
Block a user