ANDROID: GKI: pci: add Android ABI padding to some structures
Try to mitigate potential future driver core api changes by adding a padding to struct pci_sriov, struct pci_dev, struct pci_bus, and struct pci_driver. Based on a change made to the RHEL/CENTOS 8 kernel. Bug: 151154716 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: I236df60165b25a33b06fc81f76014162401ba742
This commit is contained in:
@@ -3,6 +3,7 @@
|
|||||||
#define DRIVERS_PCI_H
|
#define DRIVERS_PCI_H
|
||||||
|
|
||||||
#include <linux/pci.h>
|
#include <linux/pci.h>
|
||||||
|
#include <linux/android_kabi.h>
|
||||||
|
|
||||||
/* Number of possible devfns: 0.0 to 1f.7 inclusive */
|
/* Number of possible devfns: 0.0 to 1f.7 inclusive */
|
||||||
#define MAX_NR_DEVFNS 256
|
#define MAX_NR_DEVFNS 256
|
||||||
@@ -343,6 +344,11 @@ struct pci_sriov {
|
|||||||
u16 subsystem_device; /* VF subsystem device */
|
u16 subsystem_device; /* VF subsystem device */
|
||||||
resource_size_t barsz[PCI_SRIOV_NUM_BARS]; /* VF BAR size */
|
resource_size_t barsz[PCI_SRIOV_NUM_BARS]; /* VF BAR size */
|
||||||
bool drivers_autoprobe; /* Auto probing of VFs by driver */
|
bool drivers_autoprobe; /* Auto probing of VFs by driver */
|
||||||
|
|
||||||
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
ANDROID_KABI_RESERVE(2);
|
||||||
|
ANDROID_KABI_RESERVE(3);
|
||||||
|
ANDROID_KABI_RESERVE(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -41,6 +41,7 @@
|
|||||||
#include <uapi/linux/pci.h>
|
#include <uapi/linux/pci.h>
|
||||||
|
|
||||||
#include <linux/pci_ids.h>
|
#include <linux/pci_ids.h>
|
||||||
|
#include <linux/android_kabi.h>
|
||||||
|
|
||||||
#define PCI_STATUS_ERROR_BITS (PCI_STATUS_DETECTED_PARITY | \
|
#define PCI_STATUS_ERROR_BITS (PCI_STATUS_DETECTED_PARITY | \
|
||||||
PCI_STATUS_SIG_SYSTEM_ERROR | \
|
PCI_STATUS_SIG_SYSTEM_ERROR | \
|
||||||
@@ -500,6 +501,11 @@ struct pci_dev {
|
|||||||
char *driver_override; /* Driver name to force a match */
|
char *driver_override; /* Driver name to force a match */
|
||||||
|
|
||||||
unsigned long priv_flags; /* Private flags for the PCI driver */
|
unsigned long priv_flags; /* Private flags for the PCI driver */
|
||||||
|
|
||||||
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
ANDROID_KABI_RESERVE(2);
|
||||||
|
ANDROID_KABI_RESERVE(3);
|
||||||
|
ANDROID_KABI_RESERVE(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline struct pci_dev *pci_physfn(struct pci_dev *dev)
|
static inline struct pci_dev *pci_physfn(struct pci_dev *dev)
|
||||||
@@ -636,6 +642,11 @@ struct pci_bus {
|
|||||||
struct bin_attribute *legacy_io; /* Legacy I/O for this bus */
|
struct bin_attribute *legacy_io; /* Legacy I/O for this bus */
|
||||||
struct bin_attribute *legacy_mem; /* Legacy mem */
|
struct bin_attribute *legacy_mem; /* Legacy mem */
|
||||||
unsigned int is_added:1;
|
unsigned int is_added:1;
|
||||||
|
|
||||||
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
ANDROID_KABI_RESERVE(2);
|
||||||
|
ANDROID_KABI_RESERVE(3);
|
||||||
|
ANDROID_KABI_RESERVE(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
#define to_pci_bus(n) container_of(n, struct pci_bus, dev)
|
#define to_pci_bus(n) container_of(n, struct pci_bus, dev)
|
||||||
@@ -869,6 +880,11 @@ struct pci_driver {
|
|||||||
const struct attribute_group **groups;
|
const struct attribute_group **groups;
|
||||||
struct device_driver driver;
|
struct device_driver driver;
|
||||||
struct pci_dynids dynids;
|
struct pci_dynids dynids;
|
||||||
|
|
||||||
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
ANDROID_KABI_RESERVE(2);
|
||||||
|
ANDROID_KABI_RESERVE(3);
|
||||||
|
ANDROID_KABI_RESERVE(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
#define to_pci_driver(drv) container_of(drv, struct pci_driver, driver)
|
#define to_pci_driver(drv) container_of(drv, struct pci_driver, driver)
|
||||||
|
Reference in New Issue
Block a user