Commit 5d354190 authored by Wang Hai's avatar Wang Hai Committed by Zhengchao Shao
Browse files

kabi: net: reserve space for net base subsystem related structure

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



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

Reserve some fields beforehand for net base framework related
structures prone to change.

Signed-off-by: default avatarWang Hai <wanghai38@huawei.com>
Signed-off-by: default avatarZhengchao Shao <shaozhengchao@huawei.com>
parent ec7d7879
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@
#include <linux/device/class.h>
#include <linux/device/driver.h>
#include <linux/cleanup.h>
#include <linux/kabi.h>
#include <asm/device.h>

struct device;
@@ -805,6 +806,15 @@ struct device {
#ifdef CONFIG_DMA_OPS_BYPASS
	bool			dma_ops_bypass : 1;
#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)
};

/**
+6 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@
#include <linux/klist.h>
#include <linux/pm.h>
#include <linux/device/bus.h>
#include <linux/kabi.h>

struct device;
struct fwnode_handle;
@@ -69,6 +70,11 @@ struct class {
	void (*get_ownership)(const struct device *dev, kuid_t *uid, kgid_t *gid);

	const struct dev_pm_ops *pm;

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

struct class_dev_iter {
+6 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@
#include <linux/if_ether.h>
#include <linux/netlink.h>
#include <uapi/linux/ethtool.h>
#include <linux/kabi.h>

struct compat_ethtool_rx_flow_spec {
	u32		flow_type;
@@ -912,6 +913,11 @@ struct ethtool_ops {
	int	(*set_mm)(struct net_device *dev, struct ethtool_mm_cfg *cfg,
			  struct netlink_ext_ack *extack);
	void	(*get_mm_stats)(struct net_device *dev, struct ethtool_mm_stats *stats);

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

int ethtool_check_ops(const struct ethtool_ops *ops);
+4 −0
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@
#include <linux/sysctl.h>
#include <linux/rtnetlink.h>
#include <linux/refcount.h>
#include <linux/kabi.h>

struct ipv4_devconf {
	void	*sysctl;
@@ -50,6 +51,9 @@ struct in_device {
	struct neigh_parms	*arp_parms;
	struct ipv4_devconf	cnf;
	struct rcu_head		rcu_head;

	KABI_RESERVE(1)
	KABI_RESERVE(2)
};

#define IPV4_DEVCONF(cnf, attr) ((cnf).data[IPV4_DEVCONF_ ## attr - 1])
+6 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@
#define _IPV6_H

#include <uapi/linux/ipv6.h>
#include <linux/kabi.h>

#define ipv6_optlen(p)  (((p)->hdrlen+1) << 3)
#define ipv6_authlen(p) (((p)->hdrlen+2) << 2)
@@ -84,6 +85,11 @@ struct ipv6_devconf {
	__u8		ndisc_evict_nocarrier;

	struct ctl_table_header *sysctl_header;

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

struct ipv6_params {
Loading