ANDROID: GKI: scsi: add Android ABI padding to some structures
Try to mitigate potential future driver core api changes by adding a padding to struct scsi_cmnd, struct scsi_device, and struct scsi_host_template. Based on a change made to the RHEL/CENTOS 8 kernel. Bug: 151154716 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: Ie6a2b91970e8f9063bf00e96a0dff661f77b8e8d
This commit is contained in:

committed by
Todd Kjos

parent
33175403b9
commit
1b79ef2754
@@ -11,6 +11,7 @@
|
|||||||
#include <linux/scatterlist.h>
|
#include <linux/scatterlist.h>
|
||||||
#include <scsi/scsi_device.h>
|
#include <scsi/scsi_device.h>
|
||||||
#include <scsi/scsi_request.h>
|
#include <scsi/scsi_request.h>
|
||||||
|
#include <linux/android_kabi.h>
|
||||||
|
|
||||||
struct Scsi_Host;
|
struct Scsi_Host;
|
||||||
struct scsi_driver;
|
struct scsi_driver;
|
||||||
@@ -142,6 +143,11 @@ struct scsi_cmnd {
|
|||||||
|
|
||||||
unsigned char tag; /* SCSI-II queued command tag */
|
unsigned char tag; /* SCSI-II queued command tag */
|
||||||
unsigned int extra_len; /* length of alignment and padding */
|
unsigned int extra_len; /* length of alignment and padding */
|
||||||
|
|
||||||
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
ANDROID_KABI_RESERVE(2);
|
||||||
|
ANDROID_KABI_RESERVE(3);
|
||||||
|
ANDROID_KABI_RESERVE(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -8,6 +8,7 @@
|
|||||||
#include <linux/blkdev.h>
|
#include <linux/blkdev.h>
|
||||||
#include <scsi/scsi.h>
|
#include <scsi/scsi.h>
|
||||||
#include <linux/atomic.h>
|
#include <linux/atomic.h>
|
||||||
|
#include <linux/android_kabi.h>
|
||||||
|
|
||||||
struct device;
|
struct device;
|
||||||
struct request_queue;
|
struct request_queue;
|
||||||
@@ -237,6 +238,12 @@ struct scsi_device {
|
|||||||
struct mutex state_mutex;
|
struct mutex state_mutex;
|
||||||
enum scsi_device_state sdev_state;
|
enum scsi_device_state sdev_state;
|
||||||
struct task_struct *quiesced_by;
|
struct task_struct *quiesced_by;
|
||||||
|
|
||||||
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
ANDROID_KABI_RESERVE(2);
|
||||||
|
ANDROID_KABI_RESERVE(3);
|
||||||
|
ANDROID_KABI_RESERVE(4);
|
||||||
|
|
||||||
unsigned long sdev_data[];
|
unsigned long sdev_data[];
|
||||||
} __attribute__((aligned(sizeof(unsigned long))));
|
} __attribute__((aligned(sizeof(unsigned long))));
|
||||||
|
|
||||||
|
@@ -10,6 +10,7 @@
|
|||||||
#include <linux/seq_file.h>
|
#include <linux/seq_file.h>
|
||||||
#include <linux/blk-mq.h>
|
#include <linux/blk-mq.h>
|
||||||
#include <scsi/scsi.h>
|
#include <scsi/scsi.h>
|
||||||
|
#include <linux/android_kabi.h>
|
||||||
|
|
||||||
struct block_device;
|
struct block_device;
|
||||||
struct completion;
|
struct completion;
|
||||||
@@ -486,6 +487,11 @@ struct scsi_host_template {
|
|||||||
|
|
||||||
/* Delay for runtime autosuspend */
|
/* Delay for runtime autosuspend */
|
||||||
int rpm_autosuspend_delay;
|
int rpm_autosuspend_delay;
|
||||||
|
|
||||||
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
ANDROID_KABI_RESERVE(2);
|
||||||
|
ANDROID_KABI_RESERVE(3);
|
||||||
|
ANDROID_KABI_RESERVE(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user