History

Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

David S. Miller committed 5 years ago

Commit d489ded2 parents 86dd986 3af409c56 files · +724 −336Browse files

Showing the changes to kernel (1 of 56 files). Show all

Unified · Split

kernel/bpf/verifier.c+6−4
@@ -11563,7 +11563,7 @@ static int fixup_bpf_calls(struct bpf_verifier_env *env) · 11562 unmodified lines
11563 bool isdiv = BPF_OP(insn->code) == BPF_DIV;11563 bool isdiv = BPF_OP(insn->code) == BPF_DIV;
11564 struct bpf_insn *patchlet;11564 struct bpf_insn *patchlet;
11565 struct bpf_insn chk_and_div[] = {11565 struct bpf_insn chk_and_div[] = {
11566 /* Rx div 0 -> 0 */11566 /* [R,W]x div 0 -> 0 */
11567 BPF_RAW_INSN((is64 ? BPF_JMP : BPF_JMP32) |11567 BPF_RAW_INSN((is64 ? BPF_JMP : BPF_JMP32) |
11568 BPF_JNE | BPF_K, insn->src_reg,11568 BPF_JNE | BPF_K, insn->src_reg,
11569 0, 2, 0),11569 0, 2, 0),
@@ -11572,16 +11572,18 @@ static int fixup_bpf_calls(struct bpf_verifier_env *env) · 2 unmodified lines
11572 *insn,11572 *insn,
11573 };11573 };
11574 struct bpf_insn chk_and_mod[] = {11574 struct bpf_insn chk_and_mod[] = {
11575 /* Rx mod 0 -> Rx */11575 /* [R,W]x mod 0 -> [R,W]x */
11576 BPF_RAW_INSN((is64 ? BPF_JMP : BPF_JMP32) |11576 BPF_RAW_INSN((is64 ? BPF_JMP : BPF_JMP32) |
11577 BPF_JEQ | BPF_K, insn->src_reg,11577 BPF_JEQ | BPF_K, insn->src_reg,
11578 0, 1, 0),11578 0, 1 + (is64 ? 0 : 1), 0),
11579 *insn,11579 *insn,
11580 BPF_JMP_IMM(BPF_JA, 0, 0, 1),
11581 BPF_MOV32_REG(insn->dst_reg, insn->dst_reg),
11580 };11582 };
11581 11583
11582 patchlet = isdiv ? chk_and_div : chk_and_mod;11584 patchlet = isdiv ? chk_and_div : chk_and_mod;
11583 cnt = isdiv ? ARRAY_SIZE(chk_and_div) :11585 cnt = isdiv ? ARRAY_SIZE(chk_and_div) :
11584 ARRAY_SIZE(chk_and_mod);11586 ARRAY_SIZE(chk_and_mod) - (is64 ? 2 : 0);
11585 11587
11586 new_prog = bpf_patch_insn_data(env, i + delta, patchlet, cnt);11588 new_prog = bpf_patch_insn_data(env, i + delta, patchlet, cnt);
11587 if (!new_prog)11589 if (!new_prog)

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t