Home
last modified time | relevance | path

Searched +full:fault +full:- +full:inject (Results 1 – 25 of 99) sorted by relevance

1234

/linux-6.12.1/Documentation/fault-injection/
Dfault-injection.rst2 Fault injection capabilities infrastructure
5 See also drivers/md/md-faulty.c and "every_nth" module option for scsi_debug.
8 Available fault injection capabilities
9 --------------------------------------
11 - failslab
15 - fail_page_alloc
19 - fail_usercopy
23 - fail_futex
25 injects futex deadlock and uaddr fault errors.
27 - fail_sunrpc
[all …]
Dnotifier-error-inject.rst4 Notifier error injection provides the ability to inject artificial errors to
15 ----------------------------------
18 /sys/kernel/debug/notifier-error-inject/pm/actions/<notifier event>/error
26 Example: Inject PM suspend error (-12 = -ENOMEM)::
28 # cd /sys/kernel/debug/notifier-error-inject/pm/
29 # echo -12 > actions/PM_SUSPEND_PREPARE/error
34 ----------------------------------------------
37 /sys/kernel/debug/notifier-error-inject/memory/actions/<notifier event>/error
44 Example: Inject memory hotplug offline error (-12 == -ENOMEM)::
46 # cd /sys/kernel/debug/notifier-error-inject/memory
[all …]
Dindex.rst1 .. SPDX-License-Identifier: GPL-2.0
4 Fault-injection
10 fault-injection
11 notifier-error-inject
12 nvme-fault-injection
13 provoke-crashes
Dnvme-fault-injection.rst1 NVMe Fault Injection
3 Linux's fault injection framework provides a systematic way to support
10 Following examples show how to inject an error into the nvme.
16 Example 1: Inject default status code with no retry
17 ---------------------------------------------------
34 CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.15.0-rc8+ #2
68 EXT4-fs error (device nvme0n1): ext4_find_entry:1436:
71 Example 2: Inject default status code with retry
72 ------------------------------------------------
92 CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.15.0-rc8+ #4
[all …]
/linux-6.12.1/drivers/misc/
Dxilinx_tmr_inject.c1 // SPDX-License-Identifier: GPL-2.0
3 * Driver for Xilinx TMR Inject IP.
8 * This driver is developed for TMR Inject IP,The Triple Modular Redundancy(TMR)
9 * Inject provides fault injection.
17 #include <linux/fault-inject.h>
19 /* TMR Inject Register offsets */
34 * struct xtmr_inject_dev - Driver data for TMR Inject
46 MODULE_PARM_DESC(inject_request, "default fault injection attributes");
53 iowrite32(value, xtmr_inject->regs + addr); in xtmr_inject_write()
59 return ioread32(xtmr_inject->regs + addr); in xtmr_inject_read()
[all …]
/linux-6.12.1/Documentation/devicetree/bindings/misc/
Dxlnx,tmr-inject.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/misc/xlnx,tmr-inject.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Xilinx Triple Modular Redundancy(TMR) Inject IP
10 - Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
13 The Triple Modular Redundancy(TMR) Inject core provides functional fault
15 possibility to verify that the TMR subsystem error detection and fault
21 - xlnx,tmr-inject-1.0
35 - compatible
[all …]
/linux-6.12.1/arch/arm64/kvm/
Dinject_fault.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Fault injection for both 32 and 64bit guests.
5 * Copyright (C) 2012,2013 - ARM Ltd
9 * Copyright (C) 2012 - Virtual Open Systems and Columbia University
74 * an AArch32 fault, it means we managed to trap an EL0 fault. in inject_abt64()
159 * kvm_inject_dabt - inject a data abort into the guest
175 * kvm_inject_pabt - inject a prefetch abort into the guest
204 * Size Fault at level 0, as if exceeding PARange. in kvm_inject_size_fault()
206 * Non-LPAE guests will only get the external abort, as there in kvm_inject_size_fault()
219 * kvm_inject_undefined - inject an undefined instruction into the guest
[all …]
/linux-6.12.1/lib/
Dfault-inject-usercopy.c1 // SPDX-License-Identifier: GPL-2.0-only
2 #include <linux/fault-inject.h>
3 #include <linux/fault-inject-usercopy.h>
DKconfig.debug1 # SPDX-License-Identifier: GPL-2.0-only
19 parameter printk.time=1. See Documentation/admin-guide/kernel-parameters.rst
50 int "Default console loglevel (1-15)"
60 Note: This does not affect the log level of un-prefixed printk()
65 int "quiet console loglevel (1-15)"
76 int "Default message log level (1-7)"
82 This was hard-coded to KERN_WARNING since at least 2.6.10 but folks
118 enabled/disabled based on various levels of scope - per source file,
158 nullarbor:~ # echo -n 'file svcsock.c line 1603 +p' >
162 nullarbor:~ # echo -n 'file svcsock.c +p' >
[all …]
DMakefile1 # SPDX-License-Identifier: GPL-2.0
6 ccflags-remove-$(CONFIG_FUNCTION_TRACER) += $(CC_FLAGS_FTRACE)
8 # These files are disabled because they produce lots of non-interesting and/or
16 KCOV_INSTRUMENT_fault-inject.o := n
20 # Use -ffreestanding to ensure that the compiler does not try to "optimize"
22 CFLAGS_string.o := -ffreestanding
28 CFLAGS_string.o += -fno-stack-protector
31 lib-y := ctype.o string.o vsprintf.o cmdline.o \
32 rbtree.o radix-tree.o timerqueue.o xarray.o \
40 lib-$(CONFIG_PRINTK) += dump_stack.o
[all …]
Dusercopy.c1 // SPDX-License-Identifier: GPL-2.0
5 #include <linux/fault-inject-usercopy.h>
13 /* out-of-line parts */
38 * first non-zero byte is).
41 * * 0: There were non-zero bytes present in the buffer.
43 * * -EFAULT: access to userspace failed.
53 from -= align; in check_zeroed_user()
57 return -EFAULT; in check_zeroed_user()
68 size -= sizeof(unsigned long); in check_zeroed_user()
81 return -EFAULT; in check_zeroed_user()
Dstrncpy_from_user.c1 // SPDX-License-Identifier: GPL-2.0
4 #include <linux/fault-inject-usercopy.h>
5 #include <linux/kasan-checks.h>
13 #include <asm/word-at-a-time.h>
19 (((long) dst | (long) src) & (sizeof(long) - 1))
24 * 'count' is the user-supplied count (return 'count' if we
26 * -EFAULT if we hit it).
40 /* Fall back to byte-at-a-time if we get a page fault */ in do_strncpy_from_user()
50 * as an opaque set of bytes. Without the post-NUL mask, any BPF in do_strncpy_from_user()
65 max -= sizeof(unsigned long); in do_strncpy_from_user()
[all …]
/linux-6.12.1/tools/testing/selftests/kvm/x86_64/
Dnested_exceptions_test.c1 // SPDX-License-Identifier: GPL-2.0-only
16 /* Arbitrary 32-bit error code injected by this test. */
32 * Bit '1' is set if the fault occurred when looking up a descriptor in the
46 * led to the double fault.
77 struct vmcb *vmcb = svm->vmcb; in svm_run_l2()
78 struct vmcb_control_area *ctrl = &vmcb->control; in svm_run_l2()
80 vmcb->save.rip = (u64)l2_code; in svm_run_l2()
81 run_guest(vmcb, svm->vmcb_gpa); in svm_run_l2()
86 GUEST_ASSERT_EQ(ctrl->exit_code, (SVM_EXIT_EXCP_BASE + vector)); in svm_run_l2()
87 GUEST_ASSERT_EQ(ctrl->exit_info_1, error_code); in svm_run_l2()
[all …]
/linux-6.12.1/arch/x86/kvm/vmx/
Dsgx.c1 // SPDX-License-Identifier: GPL-2.0
28 bool fault; in sgx_get_encls_gva() local
30 /* Skip vmcs.GUEST_DS retrieval for 64-bit mode to avoid VMREADs. */ in sgx_get_encls_gva()
38 fault = true; in sgx_get_encls_gva()
41 fault = is_noncanonical_address(*gva, vcpu); in sgx_get_encls_gva()
44 fault = (s.unusable) || in sgx_get_encls_gva()
48 (((u64)*gva + size - 1) > s.limit + 1)); in sgx_get_encls_gva()
50 if (fault) in sgx_get_encls_gva()
52 return fault ? -EINVAL : 0; in sgx_get_encls_gva()
68 return -EFAULT; in sgx_read_hva()
[all …]
/linux-6.12.1/drivers/ufs/core/
Dufs-fault-injection.c1 // SPDX-License-Identifier: GPL-2.0-or-later
5 #include <linux/fault-inject.h>
9 #include "ufs-fault-injection.h"
22 * For more details about fault injection, please refer to
23 * Documentation/fault-injection/fault-injection.rst.
28 "Fault injection. trigger_eh=<interval>,<probability>,<space>,<times>");
34 "Fault injection. timeout=<interval>,<probability>,<space>,<times>");
39 const char *fault_str = kp->arg; in ufs_fault_get()
48 if (kp->arg == g_trigger_eh_str) in ufs_fault_set()
50 else if (kp->arg == g_timeout_str) in ufs_fault_set()
[all …]
/linux-6.12.1/tools/testing/fault-injection/
Dfailcmd.sh2 # SPDX-License-Identifier: GPL-2.0
5 # failcmd.sh - run a command with injecting slab/page allocation failures
8 # failcmd.sh --help
12 # Run command with injecting slab/page allocation failures by fault
24 -p percent
25 --probability=percent
29 -t value
30 --times=value
34 --oom-kill-allocating-task=value
39 -h, --help
[all …]
/linux-6.12.1/Documentation/mm/
Dhwpoison.rst41 The code consists of a the high level handler in mm/memory-failure.c,
46 of applications. KVM support requires a recent qemu-kvm release.
49 KVM can inject the machine check into the guest with the proper
109 * madvise(MADV_HWPOISON, ....) (as root) - Poison a page in the
112 * hwpoison-inject module through debugfs ``/sys/kernel/debug/hwpoison/``
114 corrupt-pfn
115 Inject hwpoison fault at PFN echoed into this file. This does
118 unpoison-pfn
119 Software-unpoison page at PFN echoed into this file. This way
127 corrupt-filter-dev-major, corrupt-filter-dev-minor
[all …]
/linux-6.12.1/drivers/nvme/host/
Dfault_inject.c1 // SPDX-License-Identifier: GPL-2.0
3 * fault injection support for nvme.
13 /* optional fault injection attributes boot time option:
23 struct fault_attr *attr = &fault_inj->attr; in nvme_fault_inject_init()
25 /* set default fault injection attribute */ in nvme_fault_inject_init()
43 fault_inj->parent = parent; in nvme_fault_inject_init()
46 fault_inj->status = NVME_SC_INVALID_OPCODE; in nvme_fault_inject_init()
47 fault_inj->dont_retry = true; in nvme_fault_inject_init()
48 debugfs_create_x16("status", 0600, dir, &fault_inj->status); in nvme_fault_inject_init()
49 debugfs_create_bool("dont_retry", 0600, dir, &fault_inj->dont_retry); in nvme_fault_inject_init()
[all …]
/linux-6.12.1/drivers/infiniband/hw/hfi1/
Dfault.h1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
9 #include <linux/fault-inject.h>
20 struct fault { struct
/linux-6.12.1/mm/
Dfailslab.c1 // SPDX-License-Identifier: GPL-2.0
2 #include <linux/fault-inject.h>
3 #include <linux/error-injection.h>
23 /* No fault-injection for bootstrap cache */ in should_failslab()
34 if (failslab.cache_filter && !(s->flags & SLAB_FAILSLAB)) in should_failslab()
46 return should_fail_ex(&failslab.attr, s->object_size, flags) ? -ENOMEM : 0; in should_failslab()
66 debugfs_create_bool("ignore-gfp-wait", mode, dir, in failslab_debugfs_init()
68 debugfs_create_bool("cache-filter", mode, dir, in failslab_debugfs_init()
Dfail_page_alloc.c1 // SPDX-License-Identifier: GPL-2.0
2 #include <linux/fault-inject.h>
4 #include <linux/error-injection.h>
58 debugfs_create_bool("ignore-gfp-wait", mode, dir, in fail_page_alloc_debugfs()
60 debugfs_create_bool("ignore-gfp-highmem", mode, dir, in fail_page_alloc_debugfs()
62 debugfs_create_u32("min-order", mode, dir, &fail_page_alloc.min_order); in fail_page_alloc_debugfs()
/linux-6.12.1/net/sunrpc/
Dfail.h1 /* SPDX-License-Identifier: GPL-2.0 */
9 #include <linux/fault-inject.h>
/linux-6.12.1/drivers/media/platform/qcom/venus/
Ddbgfs.h1 /* SPDX-License-Identifier: GPL-2.0 */
7 #include <linux/fault-inject.h>
Ddbgfs.c1 // SPDX-License-Identifier: GPL-2.0-only
7 #include <linux/fault-inject.h>
17 core->root = debugfs_create_dir("venus", NULL); in venus_dbgfs_init()
18 debugfs_create_x32("fw_level", 0644, core->root, &venus_fw_debug); in venus_dbgfs_init()
21 fault_create_debugfs_attr("fail_ssr", core->root, &venus_ssr_attr); in venus_dbgfs_init()
27 debugfs_remove_recursive(core->root); in venus_dbgfs_deinit()
/linux-6.12.1/Documentation/virt/kvm/devices/
Ds390_flic.rst1 .. SPDX-License-Identifier: GPL-2.0
7 FLIC handles floating (non per-cpu) interrupts, i.e. I/O, service and some
8 machine check interruptions. All interrupts are stored in a per-vm list of
14 - add interrupts (KVM_DEV_FLIC_ENQUEUE)
15 - inspect currently pending interrupts (KVM_FLIC_GET_ALL_IRQS)
16 - purge all pending floating interrupts (KVM_DEV_FLIC_CLEAR_IRQS)
17 - purge one pending floating I/O interrupt (KVM_DEV_FLIC_CLEAR_IO_IRQ)
18 - enable/disable for the guest transparent async page faults
19 - register and modify adapter interrupt sources (KVM_DEV_FLIC_ADAPTER_*)
20 - modify AIS (adapter-interruption-suppression) mode state (KVM_DEV_FLIC_AISM)
[all …]

1234