Wang Wensheng (12): delayacct: Reserve kabi for task_delay_info xarray: Reserve kabi for xa_state sbitmap: Add kabi reserve iommu: Add kabi reserve drm: Add kabi reserve in drm_mode_config.h drm: Add kabi reserve in drm_modeset_lock.h drm: Add kabi reserve in drm_plane.h drm: Add kabi reserve in drm_syncobj.h drm: Add kabi reserve in drm_gpu_scheduler.h drm/ttm: Add kabi reserve in ttm_bo.h drm/ttm: Add kabi reserve in ttm_resource.h drm/ttm: Add kabi reserve in ttm_tt.h
include/drm/drm_mode_config.h | 5 +++++ include/drm/drm_modeset_lock.h | 3 +++ include/drm/drm_plane.h | 9 +++++++++ include/drm/drm_syncobj.h | 3 +++ include/drm/gpu_scheduler.h | 15 +++++++++++++++ include/drm/ttm/ttm_bo.h | 7 +++++++ include/drm/ttm/ttm_resource.h | 13 +++++++++++++ include/drm/ttm/ttm_tt.h | 3 +++ include/linux/delayacct.h | 3 +++ include/linux/iommu.h | 17 +++++++++++++++++ include/linux/sbitmap.h | 9 +++++++++ include/linux/xarray.h | 3 +++ 12 files changed, 90 insertions(+)
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for task_delay_info in delayacct.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/linux/delayacct.h | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/include/linux/delayacct.h b/include/linux/delayacct.h index 6639f48dac36..dd313e69374a 100644 --- a/include/linux/delayacct.h +++ b/include/linux/delayacct.h @@ -8,6 +8,7 @@ #define _LINUX_DELAYACCT_H
#include <uapi/linux/taskstats.h> +#include <linux/kabi.h>
#ifdef CONFIG_TASK_DELAY_ACCT struct task_delay_info { @@ -55,6 +56,8 @@ struct task_delay_info { u32 compact_count; /* total count of memory compact */ u32 wpcopy_count; /* total count of write-protect copy */ u32 irq_count; /* total count of IRQ/SOFTIRQ */ + KABI_RESERVE(1) + KABI_RESERVE(2) }; #endif
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for xa_state in xarray.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/linux/xarray.h | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/include/linux/xarray.h b/include/linux/xarray.h index cb571dfcf4b1..89ec31f1f023 100644 --- a/include/linux/xarray.h +++ b/include/linux/xarray.h @@ -19,6 +19,7 @@ #include <linux/sched/mm.h> #include <linux/spinlock.h> #include <linux/types.h> +#include <linux/kabi.h>
/* * The bottom two bits of the entry determine how the XArray interprets @@ -1352,6 +1353,8 @@ struct xa_state { struct xa_node *xa_alloc; xa_update_node_t xa_update; struct list_lru *xa_lru; + KABI_RESERVE(1) + KABI_RESERVE(2) };
/*
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for sbitmap and sbitmap_queue in sbitmap.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/linux/sbitmap.h | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/include/linux/sbitmap.h b/include/linux/sbitmap.h index d662cf136021..03119f8b95c1 100644 --- a/include/linux/sbitmap.h +++ b/include/linux/sbitmap.h @@ -20,6 +20,7 @@ #include <linux/smp.h> #include <linux/types.h> #include <linux/wait.h> +#include <linux/kabi.h>
struct seq_file;
@@ -77,6 +78,10 @@ struct sbitmap { * cachelines until the map is exhausted. */ unsigned int __percpu *alloc_hint; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
#define SBQ_WAIT_QUEUES 8 @@ -144,6 +149,10 @@ struct sbitmap_queue { * @wakeup_cnt: Number of thread wake ups issued. */ atomic_t wakeup_cnt; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
/**
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for iommu_domain, iommu_ops, iommu_domain_ops, iommu_device and dev_iommu in iommu.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/linux/iommu.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+)
diff --git a/include/linux/iommu.h b/include/linux/iommu.h index a9f9b8bb7540..08e5244bc305 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -14,6 +14,7 @@ #include <linux/err.h> #include <linux/of.h> #include <linux/iova_bitmap.h> +#include <linux/kabi.h> #include <uapi/linux/iommu.h>
#define IOMMU_READ (1 << 0) @@ -116,6 +117,10 @@ struct iommu_domain { }; }; struct mutex switch_log_lock; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
static inline bool iommu_is_dma_domain(struct iommu_domain *domain) @@ -339,6 +344,10 @@ struct iommu_ops { const struct iommu_domain_ops *default_domain_ops; unsigned long pgsize_bitmap; struct module *owner; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
/** @@ -424,6 +433,10 @@ struct iommu_domain_ops { unsigned long *bitmap, unsigned long base_iova, unsigned long bitmap_pgshift); void (*free)(struct iommu_domain *domain); + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
/** @@ -440,6 +453,8 @@ struct iommu_device { struct fwnode_handle *fwnode; struct device *dev; u32 max_pasids; + KABI_RESERVE(1) + KABI_RESERVE(2) };
/** @@ -497,6 +512,8 @@ struct dev_iommu { u32 attach_deferred:1; u32 pci_32bit_workaround:1; u32 require_direct:1; + KABI_RESERVE(1) + KABI_RESERVE(2) };
int iommu_device_register(struct iommu_device *iommu,
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for drm_mode_config in drm_mode_config.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/drm/drm_mode_config.h | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h index 973119a9176b..df0d167c1524 100644 --- a/include/drm/drm_mode_config.h +++ b/include/drm/drm_mode_config.h @@ -28,6 +28,7 @@ #include <linux/idr.h> #include <linux/workqueue.h> #include <linux/llist.h> +#include <linux/kabi.h>
#include <drm/drm_modeset_lock.h>
@@ -955,6 +956,10 @@ struct drm_mode_config { struct drm_atomic_state *suspend_state;
const struct drm_mode_config_helper_funcs *helper_private; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
int __must_check drmm_mode_config_init(struct drm_device *dev);
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for drm_modeset_acquire_ctx in drm_modeset_lock.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/drm/drm_modeset_lock.h | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/include/drm/drm_modeset_lock.h b/include/drm/drm_modeset_lock.h index ec4f543c3d95..446e8af9aa08 100644 --- a/include/drm/drm_modeset_lock.h +++ b/include/drm/drm_modeset_lock.h @@ -27,6 +27,7 @@ #include <linux/types.h> /* stackdepot.h is not self-contained */ #include <linux/stackdepot.h> #include <linux/ww_mutex.h> +#include <linux/kabi.h>
struct drm_modeset_lock;
@@ -72,6 +73,8 @@ struct drm_modeset_acquire_ctx {
/* Perform interruptible waits on this context. */ bool interruptible; + KABI_RESERVE(1) + KABI_RESERVE(2) };
/**
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for drm_plane and drm_plane_state in drm_plane.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/drm/drm_plane.h | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h index 79d62856defb..1cd74bf1aedf 100644 --- a/include/drm/drm_plane.h +++ b/include/drm/drm_plane.h @@ -25,6 +25,7 @@
#include <linux/list.h> #include <linux/ctype.h> +#include <linux/kabi.h> #include <drm/drm_mode_object.h> #include <drm/drm_color_mgmt.h> #include <drm/drm_rect.h> @@ -237,6 +238,10 @@ struct drm_plane_state {
/** @state: backpointer to global drm_atomic_state */ struct drm_atomic_state *state; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
static inline struct drm_rect @@ -748,6 +753,10 @@ struct drm_plane { * scaling. */ struct drm_property *scaling_filter_property; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
#define obj_to_plane(x) container_of(x, struct drm_plane, base)
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for drm_syncobj in drm_syncobj.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/drm/drm_syncobj.h | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/include/drm/drm_syncobj.h b/include/drm/drm_syncobj.h index b40052132e52..33fb873cbd45 100644 --- a/include/drm/drm_syncobj.h +++ b/include/drm/drm_syncobj.h @@ -28,6 +28,7 @@
#include <linux/dma-fence.h> #include <linux/dma-fence-chain.h> +#include <linux/kabi.h>
struct drm_file;
@@ -65,6 +66,8 @@ struct drm_syncobj { * @file: A file backing for this syncobj. */ struct file *file; + KABI_RESERVE(1) + KABI_RESERVE(2) };
void drm_syncobj_free(struct kref *kref);
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for drm_sched_entity, drm_sched_rq, drm_sched_fence, drm_sched_job and drm_gpu_scheduler in drm_gpu_scheduler.h.
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/drm/gpu_scheduler.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+)
diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h index ac65f0626cfc..7585eb06a2b9 100644 --- a/include/drm/gpu_scheduler.h +++ b/include/drm/gpu_scheduler.h @@ -29,6 +29,7 @@ #include <linux/completion.h> #include <linux/xarray.h> #include <linux/workqueue.h> +#include <linux/kabi.h>
#define MAX_WAIT_SCHED_ENTITY_Q_EMPTY msecs_to_jiffies(1000)
@@ -238,6 +239,10 @@ struct drm_sched_entity { */ struct rb_node rb_tree_node;
+ KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
/** @@ -259,6 +264,8 @@ struct drm_sched_rq { struct list_head entities; struct drm_sched_entity *current_entity; struct rb_root_cached rb_tree_root; + KABI_RESERVE(1) + KABI_RESERVE(2) };
/** @@ -308,6 +315,8 @@ struct drm_sched_fence { * @owner: job owner for debugging */ void *owner; + KABI_RESERVE(1) + KABI_RESERVE(2) };
struct drm_sched_fence *to_drm_sched_fence(struct dma_fence *f); @@ -371,6 +380,8 @@ struct drm_sched_job { * When the job was pushed into the entity queue. */ ktime_t submit_ts; + KABI_RESERVE(1) + KABI_RESERVE(2) };
static inline bool drm_sched_invalidate_job(struct drm_sched_job *s_job, @@ -516,6 +527,10 @@ struct drm_gpu_scheduler { bool ready; bool free_guilty; struct device *dev; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
int drm_sched_init(struct drm_gpu_scheduler *sched,
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for ttm_buffer_object and ttm_operation_ctx in ttm_bo.h
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/drm/ttm/ttm_bo.h | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/include/drm/ttm/ttm_bo.h b/include/drm/ttm/ttm_bo.h index 0223a41a64b2..3b8816562377 100644 --- a/include/drm/ttm/ttm_bo.h +++ b/include/drm/ttm/ttm_bo.h @@ -35,6 +35,7 @@
#include <linux/kref.h> #include <linux/list.h> +#include <linux/kabi.h>
#include "ttm_device.h"
@@ -133,6 +134,10 @@ struct ttm_buffer_object { * either of these locks held. */ struct sg_table *sg; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
/** @@ -183,6 +188,8 @@ struct ttm_operation_ctx { bool force_alloc; struct dma_resv *resv; uint64_t bytes_moved; + KABI_RESERVE(1) + KABI_RESERVE(2) };
/**
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for ttm_resource_manager_func, ttm_resource_manager, ttm_bus_placement and ttm_resource in ttm_resource.h
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/drm/ttm/ttm_resource.h | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/include/drm/ttm/ttm_resource.h b/include/drm/ttm/ttm_resource.h index 78a226eba953..dbf3ecfeacc0 100644 --- a/include/drm/ttm/ttm_resource.h +++ b/include/drm/ttm/ttm_resource.h @@ -30,6 +30,7 @@ #include <linux/mutex.h> #include <linux/iosys-map.h> #include <linux/dma-fence.h> +#include <linux/kabi.h>
#include <drm/drm_print.h> #include <drm/ttm/ttm_caching.h> @@ -132,6 +133,10 @@ struct ttm_resource_manager_func { */ void (*debug)(struct ttm_resource_manager *man, struct drm_printer *printer); + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
/** @@ -174,6 +179,8 @@ struct ttm_resource_manager { * bdev->lru_lock. */ uint64_t usage; + KABI_RESERVE(1) + KABI_RESERVE(2) };
/** @@ -191,6 +198,8 @@ struct ttm_bus_placement { phys_addr_t offset; bool is_iomem; enum ttm_caching caching; + KABI_RESERVE(1) + KABI_RESERVE(2) };
/** @@ -218,6 +227,10 @@ struct ttm_resource { * @lru: Least recently used list, see &ttm_resource_manager.lru */ struct list_head lru; + KABI_RESERVE(1) + KABI_RESERVE(2) + KABI_RESERVE(3) + KABI_RESERVE(4) };
/**
hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9244H
---------------------------
Reserve space for ttm_tt in ttm_tt.h
Signed-off-by: Wang Wensheng wangwensheng4@huawei.com --- include/drm/ttm/ttm_tt.h | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/include/drm/ttm/ttm_tt.h b/include/drm/ttm/ttm_tt.h index a4eff85b1f44..6b57724dc770 100644 --- a/include/drm/ttm/ttm_tt.h +++ b/include/drm/ttm/ttm_tt.h @@ -29,6 +29,7 @@
#include <linux/pagemap.h> #include <linux/types.h> +#include <linux/kabi.h> #include <drm/ttm/ttm_caching.h> #include <drm/ttm/ttm_kmap_iter.h>
@@ -103,6 +104,8 @@ struct ttm_tt { * ttm_caching. */ enum ttm_caching caching; + KABI_RESERVE(1) + KABI_RESERVE(2) };
/**
反馈: 您发送到kernel@openeuler.org的补丁/补丁集,已成功转换为PR! PR链接地址: https://gitee.com/openeuler/kernel/pulls/4621 邮件列表地址:https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/T...
FeedBack: The patch(es) which you have sent to kernel@openeuler.org mailing list has been converted to a pull request successfully! Pull request link: https://gitee.com/openeuler/kernel/pulls/4621 Mailing list address: https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/T...