Commit 6d71f8ed authored by Li Lingfeng's avatar Li Lingfeng
Browse files

libnvdimm: reserve space for structures in libnvdimm

hulk inclusion
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/I8ZUL1



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

Reserve space for structure nd_region_desc/nvdimm_security_ops/nvdimm_pmu/
nd_device_driver/nd_namespace_pmem.

Signed-off-by: default avatarLi Lingfeng <lilingfeng3@huawei.com>
parent a212906e
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@
#include <linux/uuid.h>
#include <linux/spinlock.h>
#include <linux/bio.h>
#include <linux/kabi.h>

struct badrange_entry {
	u64 start;
@@ -136,6 +137,9 @@ struct nd_region_desc {
	int memregion;
	struct device_node *of_node;
	int (*flush)(struct nd_region *nd_region, struct bio *bio);

	KABI_RESERVE(1)
	KABI_RESERVE(2)
};

struct device;
@@ -193,6 +197,11 @@ struct nvdimm_security_ops {
	int (*query_overwrite)(struct nvdimm *nvdimm);
	int (*disable_master)(struct nvdimm *nvdimm,
			      const struct nvdimm_key_data *key_data);

	KABI_RESERVE(1)
	KABI_RESERVE(2)
	KABI_RESERVE(3)
	KABI_RESERVE(4)
};

enum nvdimm_fwa_state {
+13 −0
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@
#include <linux/device.h>
#include <linux/badblocks.h>
#include <linux/perf_event.h>
#include <linux/kabi.h>

enum nvdimm_event {
	NVDIMM_REVALIDATE_POISON,
@@ -54,6 +55,12 @@ struct nvdimm_pmu {
	enum cpuhp_state cpuhp_state;
	/* cpumask provided by arch/platform specific code */
	struct cpumask arch_cpumask;

	KABI_RESERVE(1)
	KABI_RESERVE(2)
	KABI_RESERVE(3)
	KABI_RESERVE(4)
	KABI_RESERVE(5)
};

struct platform_device;
@@ -82,6 +89,9 @@ struct nd_device_driver {
	void (*remove)(struct device *dev);
	void (*shutdown)(struct device *dev);
	void (*notify)(struct device *dev, enum nvdimm_event event);

	KABI_RESERVE(1)
	KABI_RESERVE(2)
};

static inline struct nd_device_driver *to_nd_device_driver(
@@ -142,6 +152,9 @@ struct nd_namespace_pmem {
	char *alt_name;
	uuid_t *uuid;
	int id;

	KABI_RESERVE(1)
	KABI_RESERVE(2)
};

static inline struct nd_namespace_io *to_nd_namespace_io(const struct device *dev)