Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 383156c6 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

ANDROID: GKI: workqueue.h: add Android ABI padding to some structures



Try to mitigate potential future driver core api changes by adding a
padding to struct work_struct and struct delayed_work

Based on a change made to the RHEL/CENTOS 8 kernel.

Leaf changes summary: 129 artifacts changed
Changed leaf types summary: 129 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

type 'struct work_struct' changed:
  type size changed from 256 to 384 (in bits)
  2 data member insertions:
    'u64 work_struct::android_kabi_reserved1', at offset 256 (in bits) at workqueue.h:110:1
    'u64 work_struct::android_kabi_reserved2', at offset 320 (in bits) at workqueue.h:111:1

type 'struct delayed_work' changed:
  type size changed from 704 to 960 (in bits)
  2 data member insertions:
    'u64 delayed_work::android_kabi_reserved1', at offset 832 (in bits) at workqueue.h:126:1
    'u64 delayed_work::android_kabi_reserved2', at offset 896 (in bits) at workqueue.h:127:1

Bug: 151154716
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
Change-Id: I5492a13e2430c1a5775aec52518144b7aa4f3268
parent 8e901b01
Loading
Loading
Loading
Loading
+18298 −18059

File changed.

File size exceeds preview limit.

+6 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@
#include <linux/atomic.h>
#include <linux/cpumask.h>
#include <linux/rcupdate.h>
#include <linux/android_kabi.h>

struct workqueue_struct;

@@ -106,6 +107,8 @@ struct work_struct {
#ifdef CONFIG_LOCKDEP
	struct lockdep_map lockdep_map;
#endif
	ANDROID_KABI_RESERVE(1);
	ANDROID_KABI_RESERVE(2);
};

#define WORK_DATA_INIT()	ATOMIC_LONG_INIT((unsigned long)WORK_STRUCT_NO_POOL)
@@ -119,6 +122,9 @@ struct delayed_work {
	/* target workqueue and CPU ->timer uses to queue ->work */
	struct workqueue_struct *wq;
	int cpu;

	ANDROID_KABI_RESERVE(1);
	ANDROID_KABI_RESERVE(2);
};

struct rcu_work {