提交 b8bcbd99 编写于 作者: T Tan Xiaojun 提交者: Xie XiuQi

kabi: reserve space for blk related structure

hulk inclusion
category: feature
bugzilla: 13276
CVE: NA

-------------------------------

Reserve space for the structure in blk.
Signed-off-by: NTan Xiaojun <tanxiaojun@huawei.com>
Reviewed-by: NXie XiuQi <xiexiuqi@huawei.com>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
上级 90edd900
......@@ -58,6 +58,11 @@ struct blkcg {
struct list_head cgwb_list;
refcount_t cgwb_refcnt;
#endif
KABI_RESERVE(1)
KABI_RESERVE(2)
KABI_RESERVE(3)
KABI_RESERVE(4)
};
/*
......@@ -177,6 +182,11 @@ struct blkcg_policy {
blkcg_pol_free_pd_fn *pd_free_fn;
blkcg_pol_reset_pd_stats_fn *pd_reset_stats_fn;
blkcg_pol_stat_pd_fn *pd_stat_fn;
KABI_RESERVE(1)
KABI_RESERVE(2)
KABI_RESERVE(3)
KABI_RESERVE(4)
};
extern struct blkcg blkcg_root;
......
......@@ -70,6 +70,15 @@ struct blk_mq_hw_ctx {
struct dentry *sched_debugfs_dir;
#endif
KABI_RESERVE(1)
KABI_RESERVE(2)
KABI_RESERVE(3)
KABI_RESERVE(4)
KABI_RESERVE(5)
KABI_RESERVE(6)
KABI_RESERVE(7)
KABI_RESERVE(8)
/* Must be the last member - see also blk_mq_hw_ctx_size(). */
struct srcu_struct srcu[0];
};
......@@ -90,11 +99,22 @@ struct blk_mq_tag_set {
struct mutex tag_list_lock;
struct list_head tag_list;
KABI_RESERVE(1)
KABI_RESERVE(2)
KABI_RESERVE(3)
KABI_RESERVE(4)
KABI_RESERVE(5)
KABI_RESERVE(6)
KABI_RESERVE(7)
KABI_RESERVE(8)
};
struct blk_mq_queue_data {
struct request *rq;
bool last;
KABI_RESERVE(1)
};
typedef blk_status_t (queue_rq_fn)(struct blk_mq_hw_ctx *,
......@@ -174,6 +194,15 @@ struct blk_mq_ops {
*/
void (*show_rq)(struct seq_file *m, struct request *rq);
#endif
KABI_RESERVE(1)
KABI_RESERVE(2)
KABI_RESERVE(3)
KABI_RESERVE(4)
KABI_RESERVE(5)
KABI_RESERVE(6)
KABI_RESERVE(7)
KABI_RESERVE(8)
};
enum {
......
......@@ -6,6 +6,7 @@
#ifndef __LINUX_BLK_TYPES_H
#define __LINUX_BLK_TYPES_H
#include <linux/kabi.h>
#include <linux/types.h>
#include <linux/bvec.h>
#include <linux/ktime.h>
......@@ -202,6 +203,10 @@ struct bio {
struct bio_set *bi_pool;
KABI_RESERVE(1)
KABI_RESERVE(2)
KABI_RESERVE(3)
/*
* We can inline a number of vecs at the end of the bio, to avoid
* double allocations for a small number of bio_vecs. This member
......
......@@ -392,6 +392,15 @@ struct queue_limits {
unsigned char cluster;
unsigned char raid_partial_stripes_expensive;
enum blk_zoned_model zoned;
KABI_RESERVE(1)
KABI_RESERVE(2)
KABI_RESERVE(3)
KABI_RESERVE(4)
KABI_RESERVE(5)
KABI_RESERVE(6)
KABI_RESERVE(7)
KABI_RESERVE(8)
};
#ifdef CONFIG_BLK_DEV_ZONED
......@@ -1797,6 +1806,9 @@ struct blk_integrity_profile {
integrity_processing_fn *generate_fn;
integrity_processing_fn *verify_fn;
const char *name;
KABI_RESERVE(1)
KABI_RESERVE(2)
};
extern void blk_integrity_register(struct gendisk *, struct blk_integrity *);
......@@ -1989,6 +2001,11 @@ struct block_device_operations {
void (*swap_slot_free_notify) (struct block_device *, unsigned long);
struct module *owner;
const struct pr_ops *pr_ops;
KABI_RESERVE(1)
KABI_RESERVE(2)
KABI_RESERVE(3)
KABI_RESERVE(4)
};
extern int __blkdev_driver_ioctl(struct block_device *, fmode_t, unsigned int,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册