diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h index 973119a9176b26eb5f1a72ef55bbbbc24293521a..df0d167c15244793dd5dcff4f7628d19f4d2243d 100644 --- a/include/drm/drm_mode_config.h +++ b/include/drm/drm_mode_config.h @@ -28,6 +28,7 @@ #include #include #include +#include #include @@ -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); diff --git a/include/drm/drm_modeset_lock.h b/include/drm/drm_modeset_lock.h index ec4f543c3d9503d2fa5ac5905e1c5f508355a941..446e8af9aa0898bde2f0e9a76b219f68634d9ba9 100644 --- a/include/drm/drm_modeset_lock.h +++ b/include/drm/drm_modeset_lock.h @@ -27,6 +27,7 @@ #include /* stackdepot.h is not self-contained */ #include #include +#include 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) }; /** diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h index 79d62856defbf781c81c2c7f19365d3f2da56457..1cd74bf1aedf4dac78a2ed14a9c8ac4ce6948779 100644 --- a/include/drm/drm_plane.h +++ b/include/drm/drm_plane.h @@ -25,6 +25,7 @@ #include #include +#include #include #include #include @@ -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) diff --git a/include/drm/drm_syncobj.h b/include/drm/drm_syncobj.h index b40052132e5238bf4a59256783f15aa6f5f8945e..33fb873cbd452dd23d26d4804c790261f128d72c 100644 --- a/include/drm/drm_syncobj.h +++ b/include/drm/drm_syncobj.h @@ -28,6 +28,7 @@ #include #include +#include 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); diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h index ac65f0626cfc9153d2711ed5959b2e8c84229e08..7585eb06a2b9a60dae57dac80b7a5047266699ec 100644 --- a/include/drm/gpu_scheduler.h +++ b/include/drm/gpu_scheduler.h @@ -29,6 +29,7 @@ #include #include #include +#include #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, diff --git a/include/drm/ttm/ttm_bo.h b/include/drm/ttm/ttm_bo.h index 0223a41a64b2427186243b778d1b45d9e9b8ea43..3b88165623776bfbcf0dac631f95e803a6ee4e33 100644 --- a/include/drm/ttm/ttm_bo.h +++ b/include/drm/ttm/ttm_bo.h @@ -35,6 +35,7 @@ #include #include +#include #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) }; /** diff --git a/include/drm/ttm/ttm_resource.h b/include/drm/ttm/ttm_resource.h index 78a226eba953cc7d58b0e4e33015d33ede086150..dbf3ecfeacc0844866224faa0edff309f539b8ac 100644 --- a/include/drm/ttm/ttm_resource.h +++ b/include/drm/ttm/ttm_resource.h @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -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) }; /** diff --git a/include/drm/ttm/ttm_tt.h b/include/drm/ttm/ttm_tt.h index a4eff85b1f4498d33cdb78ddbc11c036f160cdbb..6b57724dc770ad9667bbca0989218fa55125b9ac 100644 --- a/include/drm/ttm/ttm_tt.h +++ b/include/drm/ttm/ttm_tt.h @@ -29,6 +29,7 @@ #include #include +#include #include #include @@ -103,6 +104,8 @@ struct ttm_tt { * ttm_caching. */ enum ttm_caching caching; + KABI_RESERVE(1) + KABI_RESERVE(2) }; /** diff --git a/include/linux/delayacct.h b/include/linux/delayacct.h index 6639f48dac365a6013a2b11ef4ebc81b5556f4ac..dd313e69374a248c6949552a1a5b65534edeb2a0 100644 --- a/include/linux/delayacct.h +++ b/include/linux/delayacct.h @@ -8,6 +8,7 @@ #define _LINUX_DELAYACCT_H #include +#include #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 diff --git a/include/linux/iommu.h b/include/linux/iommu.h index a9f9b8bb75409705baf860aa54b5f1c988963845..08e5244bc30591cc82a87d18a036b89e13afb7e7 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -14,6 +14,7 @@ #include #include #include +#include #include #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, diff --git a/include/linux/sbitmap.h b/include/linux/sbitmap.h index d662cf136021d6b95f9e8a36081fea95a3b6527a..03119f8b95c1517ea305836c484fdb6db96003b4 100644 --- a/include/linux/sbitmap.h +++ b/include/linux/sbitmap.h @@ -20,6 +20,7 @@ #include #include #include +#include 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) }; /** diff --git a/include/linux/xarray.h b/include/linux/xarray.h index cb571dfcf4b167ca1fbbe2edeeb4a96919955b9c..89ec31f1f0237c0387dbb3b84cd04694c8b36d71 100644 --- a/include/linux/xarray.h +++ b/include/linux/xarray.h @@ -19,6 +19,7 @@ #include #include #include +#include /* * 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) }; /*