From 5d2e8ad3812642bfbe7eb3df7117590b9b20450a Mon Sep 17 00:00:00 2001
From: Oliver Neukum <oneukum@suse.com>
Date: Wed, 18 Mar 2020 14:34:56 +0100
Subject: [PATCH] kABI: more hooks for PCI changes
Patch-mainline: never, kABI guards
References: bsc#1141558
This bug may do extensive surgery in the future, adding maximum hooks
Signed-off-by: Oliver Neukum <oneukum@suse.de>
---
drivers/pci/hotplug/pciehp.h | 2 ++
include/linux/pci.h | 14 ++++++++++++++
2 files changed, 16 insertions(+)
--- a/drivers/pci/hotplug/pciehp.h
+++ b/drivers/pci/hotplug/pciehp.h
@@ -106,6 +106,8 @@ struct controller {
unsigned int ist_running;
int request_result;
wait_queue_head_t requester;
+
+ void* suse_kabi_padding;
};
/**
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -59,6 +59,8 @@ struct pci_slot {
struct hotplug_slot *hotplug; /* Hotplug info (move here) */
unsigned char number; /* PCI_SLOT(pci_dev->devfn) */
struct kobject kobj;
+
+ void* suse_kabi_padding;
};
static inline const char *pci_slot_name(const struct pci_slot *slot)
@@ -271,6 +273,9 @@ struct pci_cap_saved_data {
u16 cap_nr;
bool cap_extended;
unsigned int size;
+
+ void* suse_kabi_padding;
+
u32 data[0];
};
@@ -472,6 +477,8 @@ struct pci_dev {
size_t romlen; /* Length if not from BAR */
char *driver_override; /* Driver name to force a match */
+ void* suse_kabi_padding;
+
unsigned long priv_flags; /* Private flags for the PCI driver */
};
@@ -517,6 +524,8 @@ struct pci_host_bridge {
unsigned int native_dpc:1; /* OS may use PCIe DPC */
unsigned int preserve_config:1; /* Preserve FW resource setup */
+ void* suse_kabi_padding;
+
/* Resource alignment requirements */
resource_size_t (*align_resource)(struct pci_dev *dev,
const struct resource *res,
@@ -607,6 +616,8 @@ struct pci_bus {
struct bin_attribute *legacy_io; /* Legacy I/O for this bus */
struct bin_attribute *legacy_mem; /* Legacy mem */
unsigned int is_added:1;
+
+ void* suse_kabi_padding;
};
#define to_pci_bus(n) container_of(n, struct pci_bus, dev)
@@ -845,6 +856,9 @@ struct pci_driver {
int (*sriov_configure)(struct pci_dev *dev, int num_vfs); /* On PF */
const struct pci_error_handlers *err_handler;
const struct attribute_group **groups;
+
+ void* suse_kabi_padding;
+
struct device_driver driver;
struct pci_dynids dynids;
};