| /linux/arch/parisc/kernel/ |
| H A D | alternative.c | 48 u32 *from, replacement; in apply_alternatives() local 55 replacement = entry->replacement; in apply_alternatives() 63 index, cond, len, from, replacement); in apply_alternatives() 70 if (replacement == INSN_PxTLB) { in apply_alternatives() 71 replacement = *from; in apply_alternatives() 73 replacement |= (1 << 10); /* set el bit */ in apply_alternatives() 80 if (replacement == INSN_NOP && len > 1) in apply_alternatives() 81 replacement = 0xe8000002 + (len-2)*8; /* "b,n .+8" */ in apply_alternatives() 84 index, cond, len, replacement, from, from); in apply_alternatives() 90 source = (u32 *)((ulong)&entry->replacement + entry->replacement); in apply_alternatives() [all …]
|
| /linux/tools/objtool/tests/x86/ |
| H A D | test-empty-alternative.sh | 4 # An x86 alternative with an empty replacement still gets a relocation for its 5 # replacement offset, but the label it points at is the end of the previous 6 # replacement -- which is also the start of the next one. The value is 9 # Cloning it drags in an unrelated neighboring replacement and everything that 10 # replacement references. In the reported case an empty alternative in 25 # target's own replacement comes along ... 31 pass "empty alternative's replacement offset ignored when cloning"
|
| H A D | test-alt-annotation.sh | 4 # A text annotation on an instruction inside an alternative's replacement must 7 # The kernel annotates replacement code wherever objtool has to be told 11 # - replacement code has no real symbol, so objtool invents a NOTYPE fake 14 # replacement it referenced had no clone to point at yet. 33 # The annotation has to survive, and to still name the replacement. Checking 38 pass "text annotation on an alternative replacement carried into the patch"
|
| H A D | test-checksum-alt.sh | 4 # An alternative's replacement code counts towards the checksum of the function 8 # the alternative's type, and where the replacement forms a group, its feature 10 # replacement -- code that runs on some CPUs and not others -- still has to 14 # The patch then ships the old replacement, and the bug is fixed only on 40 # The replacement instruction itself. 45 pass "alternative replacement code counts towards the checksum"
|
| /linux/tools/objtool/tests/x86/fixtures/ |
| H A D | empty_alternative.c | 3 * An x86 alternative with an empty replacement, as the second entry of 4 * ALTERNATIVE_2("orig", "repl", ft1, "", ft2) produces. Its replacement 6 * previous replacement, which is also where the *next* one begins -- here, 15 * The replacement labels are global so the relocations name them rather than 35 /* a real replacement */ in target() 41 /* an empty one, pointing at neighbor()'s replacement */ in target() 57 * dragging its replacement in is visible.
|
| H A D | checksum_alt.c | 3 * An x86 alternative whose replacement code is part of the patched function's 7 * itself, hashing the alternative's type and, when the replacement forms a 9 * replacement -- code the CPU may or may not ever run -- has to move the 21 * ALT_REPL the replacement instruction changes; the original does not 29 * Both spellings are two bytes, because a replacement may not be longer than
|
| H A D | alt_annotate.c | 3 * An x86 alternative whose replacement instruction carries a text annotation. 11 * exists. Replacement code has no real symbol: objtool invents a NOTYPE fake 14 * replacement it names has no clone to point at yet. 22 * The replacement label is global so the relocations name it rather than 38 /* The annotation lands inside the replacement. */ in target()
|
| /linux/include/kunit/ |
| H A D | static_stub.h | 26 * KUNIT_STATIC_STUB_REDIRECT() - call a replacement 'static stub' if one exists 32 * kunit_activate_static_stub() to pass a replacement function in. The 33 * replacement function will be called by KUNIT_STATIC_STUB_REDIRECT(), which 61 typeof(&real_fn_name) replacement; \ 67 replacement = kunit_hooks.get_static_stub_address(current_test, \ 70 if (unlikely(replacement)) \ 71 return replacement(args); \ 108 * real_fn, not any previously-configured replacement.
|
| /linux/arch/parisc/include/asm/ |
| H A D | alternative.h | 27 u32 replacement; /* replacement instruction or code */ member 36 #define ALTERNATIVE(cond, replacement) "!0:" \ argument 41 ".word " __stringify(replacement) " !" \ 47 #define ALTERNATIVE(from, to, cond, replacement)\ argument 52 .word replacement ! \
|
| /linux/Documentation/dev-tools/kunit/api/ |
| H A D | functionredirection.rst | 40 function) to another function (the "replacement" function). 43 is running, and if a replacement function is available. If so, that function is 65 2. Write one or more replacement functions. 87 the real function, and the replacement function. You can call this several 88 times with different replacement functions to swap out implementations of the 102 the replacement function instead. Such calls may be buried deep in the 126 It's also possible to use these replacement functions to test to see if a
|
| /linux/arch/loongarch/include/asm/ |
| H A D | alternative.h | 14 s32 replace_offset; /* offset to replacement instruction */ 15 u16 feature; /* feature bit set for replacement */ 50 * Pad the second replacement alternative with additional NOPs if it is 51 * additionally longer than the first replacement alternative. 65 " .byte " alt_rlen(num) "\n" /* replacement len */ 67 #define ALTINSTR_REPLACEMENT(newinstr, feature, num) /* replacement */ \
|
| /linux/arch/loongarch/kernel/ |
| H A D | alternative.c | 188 union loongarch_instruction *instr, *replacement; in apply_alternatives() local 205 replacement = (void *)&a->replace_offset + a->replace_offset; in apply_alternatives() 217 replacement, a->replacementlen); in apply_alternatives() 224 replacement, a->replacementlen); in apply_alternatives() 227 DUMP_WORDS(replacement, nr_repl, "%px: rpl_insn: ", replacement); in apply_alternatives() 229 copy_alt_insns(insnbuf, instr, replacement, nr_repl); in apply_alternatives()
|
| /linux/tools/testing/selftests/bpf/prog_tests/ |
| H A D | percpu_array_inner_map.c | 7 * template's index_mask, so allowing a smaller replacement would cause OOB. 33 /* Replacement with same max_entries should succeed */ in test_percpu_array_inner_map() 43 /* Replacement with fewer max_entries must fail */ in test_percpu_array_inner_map()
|
| /linux/drivers/md/ |
| H A D | raid10.c | 483 rdev = conf->mirrors[dev].replacement; in raid10_end_write_request() 494 /* Never record new bad blocks to replacement, in raid10_end_write_request() 773 rdev = conf->mirrors[disk].replacement; in read_balance() 1227 struct bio *bio, bool replacement, in raid10_read_request() 1236 rdev = replacement ? conf->mirrors[devnum].replacement : in raid10_read_request() 1240 if (replacement) in raid10_read_request() 1248 if (!replacement && test_bit(FailFast, in raid10_write_one_disk() 1303 rrdev = conf->mirrors[i].replacement; in wait_blocked_dev() 1386 rrdev = conf->mirrors[d].replacement; in raid10_write_request() 1247 raid10_write_one_disk(struct mddev * mddev,struct r10bio * r10_bio,struct bio * bio,bool replacement,int n_copy) raid10_write_one_disk() argument [all...] |
| H A D | raid10.h | 19 struct md_rdev *rdev, *replacement; member 86 * replacement device. 138 * We sometimes need an extra bio to write to the replacement.
|
| /linux/tools/testing/selftests/drivers/net/mlxsw/ |
| H A D | rif_mac_profiles_occ.sh | 70 log_test "RIF MAC profile replacement" 118 # MAC replacement should fail because all the MAC profiles are in use 124 log_test "RIF MAC profile shared replacement"
|
| /linux/include/linux/crush/ |
| H A D | crush.h | 144 * Replacement weights for each item in a bucket. The size of the 157 * Replacement weights and ids for a given straw2 bucket, for 161 * replacement weights found at __weight_set[N]__ are used instead of 185 * Replacement weights and ids for each bucket in the crushmap. The 199 struct crush_choose_arg *args; /*!< replacement for each bucket
|
| /linux/arch/arm64/include/asm/ |
| H A D | alternative.h | 15 s32 alt_offset; /* offset to replacement instruction */ 16 u16 cpucap; /* cpucap bit set for replacement */
|
| H A D | alternative-macros.h | 31 " .byte 664f-663f\n" /* replacement len */ 38 " .byte 664f-663f\n" /* replacement len */ 54 * Alternatives with callbacks do not generate replacement instructions.
|
| /linux/tools/lib/python/kdoc/ |
| H A D | parse_data_structs.py | 235 # If the replacement rule doesn't have a type, get default 243 # Change self.symbols to use the replacement rule 352 # 2. we want symbol replacement at the entire content, not 399 Print debug information containing the replacement rules per symbol. 435 for symbol, (replacement, _) in ref_dict.items(): 438 fr'\1{replacement}\2', text)
|
| /linux/arch/sparc/include/asm/ |
| H A D | contregs.h | 21 #define AC_M_TSUTRCR 0x1000 /* s TLB Replacement Ctrl Reg */ 25 #define AC_M_TRCR 0x1400 /* hv TLB Replacement Control Reg */
|
| /linux/arch/riscv/include/asm/ |
| H A D | alternative.h | 40 s32 alt_offset; /* offset relative to replacement instruction or data */ 42 u16 alt_len; /* The replacement size */
|
| /linux/lib/kunit/ |
| H A D | static_stub.c | 40 /* Hook to return the address of the replacement function. */ 97 /* If the replacement address is NULL, deactivate the stub. */ in __kunit_activate_static_stub()
|
| /linux/fs/afs/ |
| H A D | security.c | 179 struct afs_permits *permits, *xpermits, *replacement, *zap, *new = NULL; in afs_cache_permit() local 294 replacement = xpermits; in afs_cache_permit() 304 replacement = new; in afs_cache_permit() 316 rcu_assign_pointer(vnode->permit_cache, replacement); in afs_cache_permit() 318 zap = replacement; in afs_cache_permit()
|
| /linux/kernel/locking/ |
| H A D | qspinlock_stat.h | 106 * Replacement function for pv_kick() 118 * Replacement function for pv_wait()
|