/linux-6.6.21/tools/perf/util/intel-pt-decoder/ |
D | intel-pt-insn-decoder.c | 32 enum intel_pt_insn_branch branch = INTEL_PT_BR_NO_BRANCH; in intel_pt_insn_decoder() local 40 intel_pt_insn->branch = INTEL_PT_BR_NO_BRANCH; in intel_pt_insn_decoder() 53 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder() 59 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder() 63 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder() 76 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder() 81 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder() 85 branch = INTEL_PT_BR_CONDITIONAL; in intel_pt_insn_decoder() 93 branch = INTEL_PT_BR_CONDITIONAL; in intel_pt_insn_decoder() 100 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder() [all …]
|
/linux-6.6.21/arch/x86/include/asm/ |
D | jump_label.h | 25 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument 30 : : "i" (key), "i" (2 | branch) : : l_yes); in arch_static_branch() 39 static __always_inline bool arch_static_branch(struct static_key * const key, const bool branch) in arch_static_branch() argument 44 : : "i" (key), "i" (branch) : : l_yes); in arch_static_branch() 53 …atic __always_inline bool arch_static_branch_jump(struct static_key * const key, const bool branch) in arch_static_branch_jump() argument 58 : : "i" (key), "i" (branch) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/drivers/edac/ |
D | i7300_edac.c | 67 #define to_channel(ch, branch) ((((branch)) << 1) | (ch)) argument 69 #define to_csrow(slot, ch, branch) \ argument 70 (to_channel(ch, branch) | ((slot) << 2)) 411 unsigned branch, channel, bank, rank, cas, ras; in i7300_process_fbd_error() local 428 branch = (GET_FBD_FAT_IDX(error_reg) == 2) ? 1 : 0; in i7300_process_fbd_error() 450 branch, -1, rank, in i7300_process_fbd_error() 464 branch = (GET_FBD_NF_IDX(error_reg) == 2) ? 1 : 0; in i7300_process_fbd_error() 482 channel = (branch << 1); in i7300_process_fbd_error() 498 branch >> 1, channel % 2, rank, in i7300_process_fbd_error() 586 int slot, int ch, int branch, in decode_mtr() argument [all …]
|
/linux-6.6.21/drivers/clk/nxp/ |
D | clk-lpc18xx-ccu.c | 202 static void lpc18xx_ccu_register_branch_gate_div(struct lpc18xx_clk_branch *branch, in lpc18xx_ccu_register_branch_gate_div() argument 210 if (branch->flags & CCU_BRANCH_HAVE_DIV2) { in lpc18xx_ccu_register_branch_gate_div() 215 div->reg = branch->offset + reg_base; in lpc18xx_ccu_register_branch_gate_div() 224 branch->gate.reg = branch->offset + reg_base; in lpc18xx_ccu_register_branch_gate_div() 225 branch->gate.bit_idx = 0; in lpc18xx_ccu_register_branch_gate_div() 227 branch->clk = clk_register_composite(NULL, branch->name, &parent, 1, in lpc18xx_ccu_register_branch_gate_div() 230 &branch->gate.hw, &lpc18xx_ccu_gate_ops, 0); in lpc18xx_ccu_register_branch_gate_div() 231 if (IS_ERR(branch->clk)) { in lpc18xx_ccu_register_branch_gate_div() 233 pr_warn("%s: failed to register %s\n", __func__, branch->name); in lpc18xx_ccu_register_branch_gate_div() 238 switch (branch->offset) { in lpc18xx_ccu_register_branch_gate_div() [all …]
|
/linux-6.6.21/tools/perf/util/ |
D | intel-bts.c | 80 struct branch { struct 89 struct branch *branch; in intel_bts_dump() argument 90 size_t i, pos = 0, br_sz = sizeof(struct branch), sz; in intel_bts_dump() 109 branch = (struct branch *)buf; in intel_bts_dump() 111 le64_to_cpu(branch->from), in intel_bts_dump() 112 le64_to_cpu(branch->to), in intel_bts_dump() 113 le64_to_cpu(branch->misc) & 0x10 ? in intel_bts_dump() 239 for (; offs < len_a; offs += sizeof(struct branch)) { in intel_bts_find_overlap() 273 struct branch *branch) in intel_bts_synth_branch_sample() argument 284 sample.ip = le64_to_cpu(branch->from); in intel_bts_synth_branch_sample() [all …]
|
/linux-6.6.21/scripts/tracing/ |
D | draw_functrace.py | 70 def __toString(self, branch, lastChild): argument 72 s = "%s----%s (%s)\n" % (branch, self._func, self._time) 74 s = "%s----%s\n" % (branch, self._func) 78 branch = branch[:-1] + " " 81 s += "%s" % self._children[i].__toString(branch +\ 84 s += "%s" % self._children[i].__toString(branch +\
|
/linux-6.6.21/Documentation/admin-guide/hw-vuln/ |
D | spectre.rst | 6 Spectre is a class of side channel attacks that exploit branch prediction 18 use branch prediction and speculative execution. 55 buffers, and branch predictors. Malicious software may be able to 70 of speculative execution that bypasses conditional branch instructions 92 The branch target injection attack takes advantage of speculative 94 branch predictors inside the processor used to guess the target of 103 branches in the victim to gadget code by poisoning the branch target 104 buffer of a CPU used for predicting indirect branch addresses. Such 106 with the address offset of the indirect branch under the attacker's 107 control. Since the branch prediction on impacted hardware does not [all …]
|
/linux-6.6.21/arch/arm64/include/asm/ |
D | jump_label.h | 19 const bool branch) in arch_static_branch() argument 28 : : "i"(&((char *)key)[branch]) : : l_yes); in arch_static_branch() 36 const bool branch) in arch_static_branch_jump() argument 45 : : "i"(&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/arch/loongarch/include/asm/ |
D | jump_label.h | 23 static __always_inline bool arch_static_branch(struct static_key * const key, const bool branch) in arch_static_branch() argument 28 : : "i"(&((char *)key)[branch]) : : l_yes); in arch_static_branch() 36 …atic __always_inline bool arch_static_branch_jump(struct static_key * const key, const bool branch) in arch_static_branch_jump() argument 41 : : "i"(&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/arch/riscv/include/asm/ |
D | jump_label.h | 18 const bool branch) in arch_static_branch() argument 32 : : "i"(&((char *)key)[branch]) : : label); in arch_static_branch() 40 const bool branch) in arch_static_branch_jump() argument 54 : : "i"(&((char *)key)[branch]) : : label); in arch_static_branch_jump()
|
/linux-6.6.21/arch/parisc/include/asm/ |
D | jump_label.h | 13 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument 22 : : "i" (&((char *)key)[branch]), "i" (sizeof(long)) in arch_static_branch() 30 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument 39 : : "i" (&((char *)key)[branch]), "i" (sizeof(long)) in arch_static_branch_jump()
|
/linux-6.6.21/arch/csky/include/asm/ |
D | jump_label.h | 13 bool branch) in arch_static_branch() argument 22 : : "i"(&((char *)key)[branch]) : : label); in arch_static_branch() 30 bool branch) in arch_static_branch_jump() argument 39 : : "i"(&((char *)key)[branch]) : : label); in arch_static_branch_jump()
|
/linux-6.6.21/arch/xtensa/include/asm/ |
D | jump_label.h | 14 bool branch) in arch_static_branch() argument 21 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch() 29 bool branch) in arch_static_branch_jump() argument 49 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/arch/sparc/include/asm/ |
D | jump_label.h | 11 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument 20 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch() 27 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument 36 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/arch/s390/include/asm/ |
D | jump_label.h | 26 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument 34 : : JUMP_LABEL_STATIC_KEY_CONSTRAINT (key), "i" (branch) : : label); in arch_static_branch() 40 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument 48 : : JUMP_LABEL_STATIC_KEY_CONSTRAINT (key), "i" (branch) : : label); in arch_static_branch_jump()
|
/linux-6.6.21/arch/arm/include/asm/ |
D | jump_label.h | 12 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument 19 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch() 26 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument 33 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/arch/arc/include/asm/ |
D | jump_label.h | 32 bool branch) in arch_static_branch() argument 40 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch() 48 bool branch) in arch_static_branch_jump() argument 56 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/arch/powerpc/include/asm/ |
D | jump_label.h | 18 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument 26 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch() 33 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument 41 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/Documentation/staging/ |
D | static-keys.rst | 48 The static_branch_unlikely() branch will be generated into the code with as little 56 Currently, tracepoints are implemented using a conditional branch. The 78 the branch site to change the branch direction. 80 For example, if we have a simple branch that is disabled by default:: 83 printk("I am the true branch\n"); 87 straight-line code path. When the branch is 'flipped', we will patch the 89 out-of-line true branch. Thus, changing branch direction is expensive but 90 branch selection is basically 'free'. That is the basic tradeoff of this 138 The branch(es) can then be switched via reference counts:: 144 Thus, 'static_branch_inc()' means 'make the branch true', and [all …]
|
/linux-6.6.21/arch/mips/include/asm/ |
D | jump_label.h | 37 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument 44 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch() 51 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument 57 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
|
/linux-6.6.21/tools/perf/arch/x86/tests/ |
D | insn-x86.c | 103 int op, branch, ret; in test_data_item() local 120 branch = get_branch(dat->expected_branch_str); in test_data_item() 133 if ((int)intel_pt_insn.branch != branch) { in test_data_item() 135 intel_pt_insn.branch, branch, dat->asm_rep); in test_data_item()
|
D | gen-insn-x86-dat.awk | 14 branch = "" 44 printf "}, %d, %s, \"%s\", \"%s\",", len, rel, op, branch 47 branch = "" 62 branch = $i
|
/linux-6.6.21/include/linux/ |
D | jump_label.h | 484 bool branch; \ 486 branch = !arch_static_branch(&(x)->key, true); \ 488 branch = !arch_static_branch_jump(&(x)->key, true); \ 490 branch = ____wrong_branch_error(); \ 491 likely_notrace(branch); \ 496 bool branch; \ 498 branch = arch_static_branch_jump(&(x)->key, false); \ 500 branch = arch_static_branch(&(x)->key, false); \ 502 branch = ____wrong_branch_error(); \ 503 unlikely_notrace(branch); \
|
/linux-6.6.21/tools/bootconfig/scripts/ |
D | bconf2ftrace.sh | 184 branch=$1.$2.$3 198 xbc_get_val ${branch}.probes | while read line; do 203 run_cmd "echo '`compose_synth $3 ${branch}.fields`' >> $TRACEFS/synthetic_events" 207 set_value_of ${branch}.filter ${eventdir}/filter 208 set_array_of ${branch}.actions ${eventdir}/trigger 210 setup_histograms ${branch}.hist ${eventdir}/trigger 212 if xbc_has_key ${branch}.enable; then
|
/linux-6.6.21/tools/perf/tests/attr/ |
D | README | 36 perf record -b kill (test-record-branch-any) 37 perf record -j any kill (test-record-branch-filter-any) 38 perf record -j any_call kill (test-record-branch-filter-any_call) 39 perf record -j any_ret kill (test-record-branch-filter-any_ret) 40 perf record -j hv kill (test-record-branch-filter-hv) 41 perf record -j ind_call kill (test-record-branch-filter-ind_call) 42 perf record -j k kill (test-record-branch-filter-k) 43 perf record -j u kill (test-record-branch-filter-u)
|