ANDROID: GKI: fix up abi breakage in fib_rules.h
Commit ee38eb8c ("ipv6: fix memory leak in fib6_rule_suppress") added a new variable to the fips_rules_ops.suppress() callback function pointer in order to properly handle a memory leak. This change is not a real ABI breakage, but since the function pointer structure is included in other structures within the networking stack, and they all propagate up to structures that are tracked, libabigail properly detects this change. There is no problem making the change, as the only providers of these callback functions are in the kernel already, and have been fixed up in this commit, and the variable size does not change (function pointers are function pointers), so paper over the CRC change with a judicious ifdef __GENKSYMS__ hack and update the .xml file to properly reflect the updates change: Leaf changes summary: 5 artifacts changed Changed leaf types summary: 5 leaf types changed Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable 'struct fib_rules_ops at fib_rules.h:59:1' changed: type size hasn't changed there are data member changes: type 'typedef bool (fib_rule*, fib_lookup_arg*)*' of 'fib_rules_ops::suppress' changed: pointer type changed from: 'typedef bool (fib_rule*, fib_lookup_arg*)*' to: 'typedef bool (fib_rule*, int, fib_lookup_arg*)*' 3663 impacted interfaces 'struct inet_connection_sock at inet_connection_sock.h:89:1' changed (indirectly): type size hasn't changed there are data member changes: type 'struct inet_sock' of 'inet_connection_sock::icsk_inet' changed: type size hasn't changed there are data member changes: type 'struct sock' of 'inet_sock::sk' changed: type size hasn't changed there are data member changes: data member u64 android_kabi_reserved1 at offset 6144 (in bits) became anonymous data member 'union {spinlock_t sk_peer_lock; struct {u64 android_kabi_reserved1;}; union {};}' 3663 impacted interfaces 2 impacted interfaces 2 impacted interfaces 'struct inet_sock at inet_sock.h:195:1' changed (indirectly): details were reported earlier 'struct sock at sock.h:326:1' changed: details were reported earlier 'struct tcp_sock at tcp.h:138:1' changed (indirectly): type size hasn't changed there are data member changes: type 'struct inet_connection_sock' of 'tcp_sock::inet_conn' changed, as reported earlier one impacted interface Bug: 161946584 Change-Id: I5fd2fcece8f57536369c51e438bd2739631b34e3 Signed-off-by:Greg Kroah-Hartman <gregkh@google.com>
Loading
Please register or sign in to comment