The quilt patch titled Subject: fault-inject: improve build for CONFIG_FAULT_INJECTION=n has been removed from the -mm tree. Its filename was fault-inject-improve-build-for-config_fault_injection=n.patch This patch was dropped because it was merged into the mm-nonmm-stable branch of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm ------------------------------------------------------ From: Jani Nikula <jani.nikula@xxxxxxxxx> Subject: fault-inject: improve build for CONFIG_FAULT_INJECTION=n Date: Tue, 13 Aug 2024 15:12:35 +0300 The fault-inject.h users across the kernel need to add a lot of #ifdef CONFIG_FAULT_INJECTION to cater for shortcomings in the header. Make fault-inject.h self-contained for CONFIG_FAULT_INJECTION=n, and add stubs for DECLARE_FAULT_ATTR(), setup_fault_attr(), should_fail_ex(), and should_fail() to allow removal of conditional compilation. [akpm@xxxxxxxxxxxxxxxxxxxx: repair fallout from no longer including debugfs.h into fault-inject.h] [akpm@xxxxxxxxxxxxxxxxxxxx: fix drivers/misc/xilinx_tmr_inject.c] [akpm@xxxxxxxxxxxxxxxxxxxx: Add debugfs.h inclusion to more files, per Stephen] Link: https://lkml.kernel.org/r/20240813121237.2382534-1-jani.nikula@xxxxxxxxx Fixes: 6ff1cb355e62 ("[PATCH] fault-injection capabilities infrastructure") Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> Cc: Akinobu Mita <akinobu.mita@xxxxxxxxx> Cc: Abhinav Kumar <quic_abhinavk@xxxxxxxxxxx> Cc: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> Cc: Himal Prasad Ghimiray <himal.prasad.ghimiray@xxxxxxxxx> Cc: Lucas De Marchi <lucas.demarchi@xxxxxxxxx> Cc: Rob Clark <robdclark@xxxxxxxxx> Cc: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> Cc: Thomas Hellström <thomas.hellstrom@xxxxxxxxxxxxxxx> Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- drivers/gpu/drm/msm/msm_drv.c | 1 drivers/iommu/iommufd/selftest.c | 1 drivers/misc/xilinx_tmr_inject.c | 1 drivers/nvme/host/fault_inject.c | 1 drivers/ufs/core/ufs-fault-injection.c | 1 include/linux/fault-inject.h | 36 ++++++++++++++++++----- include/linux/mmc/host.h | 1 include/ufs/ufshcd.h | 1 kernel/futex/core.c | 1 lib/fault-inject.c | 1 mm/fail_page_alloc.c | 1 mm/failslab.c | 1 12 files changed, 40 insertions(+), 7 deletions(-) --- a/drivers/gpu/drm/msm/msm_drv.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/drivers/gpu/drm/msm/msm_drv.c @@ -7,6 +7,7 @@ #include <linux/dma-mapping.h> #include <linux/fault-inject.h> +#include <linux/debugfs.h> #include <linux/of_address.h> #include <linux/uaccess.h> --- a/drivers/iommu/iommufd/selftest.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/drivers/iommu/iommufd/selftest.c @@ -7,6 +7,7 @@ #include <linux/iommu.h> #include <linux/xarray.h> #include <linux/file.h> +#include <linux/debugfs.h> #include <linux/anon_inodes.h> #include <linux/fault-inject.h> #include <linux/platform_device.h> --- a/drivers/misc/xilinx_tmr_inject.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/drivers/misc/xilinx_tmr_inject.c @@ -12,6 +12,7 @@ #include <asm/xilinx_mb_manager.h> #include <linux/module.h> #include <linux/of.h> +#include <linux/debugfs.h> #include <linux/platform_device.h> #include <linux/fault-inject.h> --- a/drivers/nvme/host/fault_inject.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/drivers/nvme/host/fault_inject.c @@ -6,6 +6,7 @@ */ #include <linux/moduleparam.h> +#include <linux/debugfs.h> #include "nvme.h" static DECLARE_FAULT_ATTR(fail_default_attr); --- a/drivers/ufs/core/ufs-fault-injection.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/drivers/ufs/core/ufs-fault-injection.c @@ -3,6 +3,7 @@ #include <linux/kconfig.h> #include <linux/types.h> #include <linux/fault-inject.h> +#include <linux/debugfs.h> #include <linux/module.h> #include <ufs/ufshcd.h> #include "ufs-fault-injection.h" --- a/include/linux/fault-inject.h~fault-inject-improve-build-for-config_fault_injection=n +++ a/include/linux/fault-inject.h @@ -2,13 +2,17 @@ #ifndef _LINUX_FAULT_INJECT_H #define _LINUX_FAULT_INJECT_H +#include <linux/err.h> +#include <linux/types.h> + +struct dentry; +struct kmem_cache; + #ifdef CONFIG_FAULT_INJECTION -#include <linux/types.h> -#include <linux/debugfs.h> +#include <linux/atomic.h> #include <linux/configfs.h> #include <linux/ratelimit.h> -#include <linux/atomic.h> /* * For explanation of the elements of this struct, see @@ -51,6 +55,28 @@ int setup_fault_attr(struct fault_attr * bool should_fail_ex(struct fault_attr *attr, ssize_t size, int flags); bool should_fail(struct fault_attr *attr, ssize_t size); +#else /* CONFIG_FAULT_INJECTION */ + +struct fault_attr { +}; + +#define DECLARE_FAULT_ATTR(name) struct fault_attr name = {} + +static inline int setup_fault_attr(struct fault_attr *attr, char *str) +{ + return 0; /* Note: 0 means error for __setup() handlers! */ +} +static inline bool should_fail_ex(struct fault_attr *attr, ssize_t size, int flags) +{ + return false; +} +static inline bool should_fail(struct fault_attr *attr, ssize_t size) +{ + return false; +} + +#endif /* CONFIG_FAULT_INJECTION */ + #ifdef CONFIG_FAULT_INJECTION_DEBUG_FS struct dentry *fault_create_debugfs_attr(const char *name, @@ -87,10 +113,6 @@ static inline void fault_config_init(str #endif /* CONFIG_FAULT_INJECTION_CONFIGFS */ -#endif /* CONFIG_FAULT_INJECTION */ - -struct kmem_cache; - #ifdef CONFIG_FAIL_PAGE_ALLOC bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order); #else --- a/include/linux/mmc/host.h~fault-inject-improve-build-for-config_fault_injection=n +++ a/include/linux/mmc/host.h @@ -10,6 +10,7 @@ #include <linux/sched.h> #include <linux/device.h> #include <linux/fault-inject.h> +#include <linux/debugfs.h> #include <linux/mmc/core.h> #include <linux/mmc/card.h> --- a/include/ufs/ufshcd.h~fault-inject-improve-build-for-config_fault_injection=n +++ a/include/ufs/ufshcd.h @@ -17,6 +17,7 @@ #include <linux/blk-mq.h> #include <linux/devfreq.h> #include <linux/fault-inject.h> +#include <linux/debugfs.h> #include <linux/msi.h> #include <linux/pm_runtime.h> #include <linux/dma-direction.h> --- a/kernel/futex/core.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/kernel/futex/core.c @@ -34,6 +34,7 @@ #include <linux/compat.h> #include <linux/jhash.h> #include <linux/pagemap.h> +#include <linux/debugfs.h> #include <linux/plist.h> #include <linux/memblock.h> #include <linux/fault-inject.h> --- a/lib/fault-inject.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/lib/fault-inject.c @@ -2,6 +2,7 @@ #include <linux/kernel.h> #include <linux/init.h> #include <linux/random.h> +#include <linux/debugfs.h> #include <linux/sched.h> #include <linux/stat.h> #include <linux/types.h> --- a/mm/fail_page_alloc.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/mm/fail_page_alloc.c @@ -1,5 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 #include <linux/fault-inject.h> +#include <linux/debugfs.h> #include <linux/error-injection.h> #include <linux/mm.h> --- a/mm/failslab.c~fault-inject-improve-build-for-config_fault_injection=n +++ a/mm/failslab.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 #include <linux/fault-inject.h> #include <linux/error-injection.h> +#include <linux/debugfs.h> #include <linux/slab.h> #include <linux/mm.h> #include "slab.h" _ Patches currently in -mm which might be from jani.nikula@xxxxxxxxx are