From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 16537C433DB for ; Mon, 29 Mar 2021 01:05:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id B61FD61930 for ; Mon, 29 Mar 2021 01:05:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231655AbhC2BFG (ORCPT ); Sun, 28 Mar 2021 21:05:06 -0400 Received: from mga05.intel.com ([192.55.52.43]:7735 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229822AbhC2BEu (ORCPT ); Sun, 28 Mar 2021 21:04:50 -0400 IronPort-SDR: oNe+wWkkkd5tUFgN6upsrPOzfsvlBqPq3wLsFUlOVo0nM/pTHltMd+s6s5HBqz+PB/1/1PjcRW ehuaSKYD9Xqw== X-IronPort-AV: E=McAfee;i="6000,8403,9937"; a="276613506" X-IronPort-AV: E=Sophos;i="5.81,285,1610438400"; d="gz'50?scan'50,208,50";a="276613506" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Mar 2021 18:04:50 -0700 IronPort-SDR: uAPlEK+Mg5QqJGZwbr+HIsjfDFZcTcMtabaznfAKFS2z1WJGOSe0kazbdA7o1pylyBrd4O3gA/ IOu7OBk1KgYg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,285,1610438400"; d="gz'50?scan'50,208,50";a="515803893" Received: from lkp-server01.sh.intel.com (HELO 69d8fcc516b7) ([10.239.97.150]) by fmsmga001.fm.intel.com with ESMTP; 28 Mar 2021 18:04:48 -0700 Received: from kbuild by 69d8fcc516b7 with local (Exim 4.92) (envelope-from ) id 1lQgKl-0004GQ-Ox; Mon, 29 Mar 2021 01:04:47 +0000 Date: Mon, 29 Mar 2021 09:03:56 +0800 From: kernel test robot To: Ingo Molnar Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org, x86@kernel.org Subject: [tip:master 9/23] arch/x86/net/bpf_jit_comp.c:2015:16: error: 'ideal_nops' undeclared Message-ID: <202103290947.0A5dyQTh-lkp@intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="UugvWAfsgieZRqgk" Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --UugvWAfsgieZRqgk Content-Type: text/plain; charset=us-ascii Content-Disposition: inline tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git master head: 4b3ff7dd4b69698c08ca1d51741fe773a7b30b0a commit: b1edfa9879e8a5e6040c33c157e23030176976a9 [9/23] Merge branch 'x86/cpu' config: x86_64-rhel-8.3-kselftests (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce (this is a W=1 build): # https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?id=b1edfa9879e8a5e6040c33c157e23030176976a9 git remote add tip https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git git fetch --no-tags tip master git checkout b1edfa9879e8a5e6040c33c157e23030176976a9 # save the attached .config to linux build tree make W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): arch/x86/net/bpf_jit_comp.c: In function 'arch_prepare_bpf_trampoline': >> arch/x86/net/bpf_jit_comp.c:2015:16: error: 'ideal_nops' undeclared (first use in this function) 2015 | memcpy(prog, ideal_nops[NOP_ATOMIC5], X86_PATCH_SIZE); | ^~~~~~~~~~ arch/x86/net/bpf_jit_comp.c:2015:16: note: each undeclared identifier is reported only once for each function it appears in >> arch/x86/net/bpf_jit_comp.c:2015:27: error: 'NOP_ATOMIC5' undeclared (first use in this function); did you mean 'GFP_ATOMIC'? 2015 | memcpy(prog, ideal_nops[NOP_ATOMIC5], X86_PATCH_SIZE); | ^~~~~~~~~~~ | GFP_ATOMIC arch/x86/net/bpf_jit_comp.c: At top level: arch/x86/net/bpf_jit_comp.c:2179:5: warning: no previous prototype for 'arch_prepare_bpf_dispatcher' [-Wmissing-prototypes] 2179 | int arch_prepare_bpf_dispatcher(void *image, s64 *funcs, int num_funcs) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/ideal_nops +2015 arch/x86/net/bpf_jit_comp.c fec56f5890d93f Alexei Starovoitov 2019-11-14 1878 fec56f5890d93f Alexei Starovoitov 2019-11-14 1879 /* Example: fec56f5890d93f Alexei Starovoitov 2019-11-14 1880 * __be16 eth_type_trans(struct sk_buff *skb, struct net_device *dev); fec56f5890d93f Alexei Starovoitov 2019-11-14 1881 * its 'struct btf_func_model' will be nr_args=2 fec56f5890d93f Alexei Starovoitov 2019-11-14 1882 * The assembly code when eth_type_trans is executing after trampoline: fec56f5890d93f Alexei Starovoitov 2019-11-14 1883 * fec56f5890d93f Alexei Starovoitov 2019-11-14 1884 * push rbp fec56f5890d93f Alexei Starovoitov 2019-11-14 1885 * mov rbp, rsp fec56f5890d93f Alexei Starovoitov 2019-11-14 1886 * sub rsp, 16 // space for skb and dev fec56f5890d93f Alexei Starovoitov 2019-11-14 1887 * push rbx // temp regs to pass start time fec56f5890d93f Alexei Starovoitov 2019-11-14 1888 * mov qword ptr [rbp - 16], rdi // save skb pointer to stack fec56f5890d93f Alexei Starovoitov 2019-11-14 1889 * mov qword ptr [rbp - 8], rsi // save dev pointer to stack fec56f5890d93f Alexei Starovoitov 2019-11-14 1890 * call __bpf_prog_enter // rcu_read_lock and preempt_disable fec56f5890d93f Alexei Starovoitov 2019-11-14 1891 * mov rbx, rax // remember start time in bpf stats are enabled fec56f5890d93f Alexei Starovoitov 2019-11-14 1892 * lea rdi, [rbp - 16] // R1==ctx of bpf prog fec56f5890d93f Alexei Starovoitov 2019-11-14 1893 * call addr_of_jited_FENTRY_prog fec56f5890d93f Alexei Starovoitov 2019-11-14 1894 * movabsq rdi, 64bit_addr_of_struct_bpf_prog // unused if bpf stats are off fec56f5890d93f Alexei Starovoitov 2019-11-14 1895 * mov rsi, rbx // prog start time fec56f5890d93f Alexei Starovoitov 2019-11-14 1896 * call __bpf_prog_exit // rcu_read_unlock, preempt_enable and stats math fec56f5890d93f Alexei Starovoitov 2019-11-14 1897 * mov rdi, qword ptr [rbp - 16] // restore skb pointer from stack fec56f5890d93f Alexei Starovoitov 2019-11-14 1898 * mov rsi, qword ptr [rbp - 8] // restore dev pointer from stack fec56f5890d93f Alexei Starovoitov 2019-11-14 1899 * pop rbx fec56f5890d93f Alexei Starovoitov 2019-11-14 1900 * leave fec56f5890d93f Alexei Starovoitov 2019-11-14 1901 * ret fec56f5890d93f Alexei Starovoitov 2019-11-14 1902 * fec56f5890d93f Alexei Starovoitov 2019-11-14 1903 * eth_type_trans has 5 byte nop at the beginning. These 5 bytes will be fec56f5890d93f Alexei Starovoitov 2019-11-14 1904 * replaced with 'call generated_bpf_trampoline'. When it returns fec56f5890d93f Alexei Starovoitov 2019-11-14 1905 * eth_type_trans will continue executing with original skb and dev pointers. fec56f5890d93f Alexei Starovoitov 2019-11-14 1906 * fec56f5890d93f Alexei Starovoitov 2019-11-14 1907 * The assembly code when eth_type_trans is called from trampoline: fec56f5890d93f Alexei Starovoitov 2019-11-14 1908 * fec56f5890d93f Alexei Starovoitov 2019-11-14 1909 * push rbp fec56f5890d93f Alexei Starovoitov 2019-11-14 1910 * mov rbp, rsp fec56f5890d93f Alexei Starovoitov 2019-11-14 1911 * sub rsp, 24 // space for skb, dev, return value fec56f5890d93f Alexei Starovoitov 2019-11-14 1912 * push rbx // temp regs to pass start time fec56f5890d93f Alexei Starovoitov 2019-11-14 1913 * mov qword ptr [rbp - 24], rdi // save skb pointer to stack fec56f5890d93f Alexei Starovoitov 2019-11-14 1914 * mov qword ptr [rbp - 16], rsi // save dev pointer to stack fec56f5890d93f Alexei Starovoitov 2019-11-14 1915 * call __bpf_prog_enter // rcu_read_lock and preempt_disable fec56f5890d93f Alexei Starovoitov 2019-11-14 1916 * mov rbx, rax // remember start time if bpf stats are enabled fec56f5890d93f Alexei Starovoitov 2019-11-14 1917 * lea rdi, [rbp - 24] // R1==ctx of bpf prog fec56f5890d93f Alexei Starovoitov 2019-11-14 1918 * call addr_of_jited_FENTRY_prog // bpf prog can access skb and dev fec56f5890d93f Alexei Starovoitov 2019-11-14 1919 * movabsq rdi, 64bit_addr_of_struct_bpf_prog // unused if bpf stats are off fec56f5890d93f Alexei Starovoitov 2019-11-14 1920 * mov rsi, rbx // prog start time fec56f5890d93f Alexei Starovoitov 2019-11-14 1921 * call __bpf_prog_exit // rcu_read_unlock, preempt_enable and stats math fec56f5890d93f Alexei Starovoitov 2019-11-14 1922 * mov rdi, qword ptr [rbp - 24] // restore skb pointer from stack fec56f5890d93f Alexei Starovoitov 2019-11-14 1923 * mov rsi, qword ptr [rbp - 16] // restore dev pointer from stack fec56f5890d93f Alexei Starovoitov 2019-11-14 1924 * call eth_type_trans+5 // execute body of eth_type_trans fec56f5890d93f Alexei Starovoitov 2019-11-14 1925 * mov qword ptr [rbp - 8], rax // save return value fec56f5890d93f Alexei Starovoitov 2019-11-14 1926 * call __bpf_prog_enter // rcu_read_lock and preempt_disable fec56f5890d93f Alexei Starovoitov 2019-11-14 1927 * mov rbx, rax // remember start time in bpf stats are enabled fec56f5890d93f Alexei Starovoitov 2019-11-14 1928 * lea rdi, [rbp - 24] // R1==ctx of bpf prog fec56f5890d93f Alexei Starovoitov 2019-11-14 1929 * call addr_of_jited_FEXIT_prog // bpf prog can access skb, dev, return value fec56f5890d93f Alexei Starovoitov 2019-11-14 1930 * movabsq rdi, 64bit_addr_of_struct_bpf_prog // unused if bpf stats are off fec56f5890d93f Alexei Starovoitov 2019-11-14 1931 * mov rsi, rbx // prog start time fec56f5890d93f Alexei Starovoitov 2019-11-14 1932 * call __bpf_prog_exit // rcu_read_unlock, preempt_enable and stats math fec56f5890d93f Alexei Starovoitov 2019-11-14 1933 * mov rax, qword ptr [rbp - 8] // restore eth_type_trans's return value fec56f5890d93f Alexei Starovoitov 2019-11-14 1934 * pop rbx fec56f5890d93f Alexei Starovoitov 2019-11-14 1935 * leave fec56f5890d93f Alexei Starovoitov 2019-11-14 1936 * add rsp, 8 // skip eth_type_trans's frame fec56f5890d93f Alexei Starovoitov 2019-11-14 1937 * ret // return to its caller fec56f5890d93f Alexei Starovoitov 2019-11-14 1938 */ e21aa341785c67 Alexei Starovoitov 2021-03-16 1939 int arch_prepare_bpf_trampoline(struct bpf_tramp_image *im, void *image, void *image_end, 85d33df357b634 Martin KaFai Lau 2020-01-08 1940 const struct btf_func_model *m, u32 flags, 88fd9e5352fe05 KP Singh 2020-03-04 1941 struct bpf_tramp_progs *tprogs, fec56f5890d93f Alexei Starovoitov 2019-11-14 1942 void *orig_call) fec56f5890d93f Alexei Starovoitov 2019-11-14 1943 { ae24082331d9bb KP Singh 2020-03-04 1944 int ret, i, cnt = 0, nr_args = m->nr_args; fec56f5890d93f Alexei Starovoitov 2019-11-14 1945 int stack_size = nr_args * 8; 88fd9e5352fe05 KP Singh 2020-03-04 1946 struct bpf_tramp_progs *fentry = &tprogs[BPF_TRAMP_FENTRY]; 88fd9e5352fe05 KP Singh 2020-03-04 1947 struct bpf_tramp_progs *fexit = &tprogs[BPF_TRAMP_FEXIT]; ae24082331d9bb KP Singh 2020-03-04 1948 struct bpf_tramp_progs *fmod_ret = &tprogs[BPF_TRAMP_MODIFY_RETURN]; ae24082331d9bb KP Singh 2020-03-04 1949 u8 **branches = NULL; fec56f5890d93f Alexei Starovoitov 2019-11-14 1950 u8 *prog; fec56f5890d93f Alexei Starovoitov 2019-11-14 1951 fec56f5890d93f Alexei Starovoitov 2019-11-14 1952 /* x86-64 supports up to 6 arguments. 7+ can be added in the future */ fec56f5890d93f Alexei Starovoitov 2019-11-14 1953 if (nr_args > 6) fec56f5890d93f Alexei Starovoitov 2019-11-14 1954 return -ENOTSUPP; fec56f5890d93f Alexei Starovoitov 2019-11-14 1955 fec56f5890d93f Alexei Starovoitov 2019-11-14 1956 if ((flags & BPF_TRAMP_F_RESTORE_REGS) && fec56f5890d93f Alexei Starovoitov 2019-11-14 1957 (flags & BPF_TRAMP_F_SKIP_FRAME)) fec56f5890d93f Alexei Starovoitov 2019-11-14 1958 return -EINVAL; fec56f5890d93f Alexei Starovoitov 2019-11-14 1959 fec56f5890d93f Alexei Starovoitov 2019-11-14 1960 if (flags & BPF_TRAMP_F_CALL_ORIG) fec56f5890d93f Alexei Starovoitov 2019-11-14 1961 stack_size += 8; /* room for return value of orig_call */ fec56f5890d93f Alexei Starovoitov 2019-11-14 1962 fec56f5890d93f Alexei Starovoitov 2019-11-14 1963 if (flags & BPF_TRAMP_F_SKIP_FRAME) fec56f5890d93f Alexei Starovoitov 2019-11-14 1964 /* skip patched call instruction and point orig_call to actual fec56f5890d93f Alexei Starovoitov 2019-11-14 1965 * body of the kernel function. fec56f5890d93f Alexei Starovoitov 2019-11-14 1966 */ 4b3da77b72ad6b Daniel Borkmann 2019-11-22 1967 orig_call += X86_PATCH_SIZE; fec56f5890d93f Alexei Starovoitov 2019-11-14 1968 fec56f5890d93f Alexei Starovoitov 2019-11-14 1969 prog = image; fec56f5890d93f Alexei Starovoitov 2019-11-14 1970 fec56f5890d93f Alexei Starovoitov 2019-11-14 1971 EMIT1(0x55); /* push rbp */ fec56f5890d93f Alexei Starovoitov 2019-11-14 1972 EMIT3(0x48, 0x89, 0xE5); /* mov rbp, rsp */ fec56f5890d93f Alexei Starovoitov 2019-11-14 1973 EMIT4(0x48, 0x83, 0xEC, stack_size); /* sub rsp, stack_size */ fec56f5890d93f Alexei Starovoitov 2019-11-14 1974 EMIT1(0x53); /* push rbx */ fec56f5890d93f Alexei Starovoitov 2019-11-14 1975 fec56f5890d93f Alexei Starovoitov 2019-11-14 1976 save_regs(m, &prog, nr_args, stack_size); fec56f5890d93f Alexei Starovoitov 2019-11-14 1977 e21aa341785c67 Alexei Starovoitov 2021-03-16 1978 if (flags & BPF_TRAMP_F_CALL_ORIG) { e21aa341785c67 Alexei Starovoitov 2021-03-16 1979 /* arg1: mov rdi, im */ e21aa341785c67 Alexei Starovoitov 2021-03-16 1980 emit_mov_imm64(&prog, BPF_REG_1, (long) im >> 32, (u32) (long) im); e21aa341785c67 Alexei Starovoitov 2021-03-16 1981 if (emit_call(&prog, __bpf_tramp_enter, prog)) { e21aa341785c67 Alexei Starovoitov 2021-03-16 1982 ret = -EINVAL; e21aa341785c67 Alexei Starovoitov 2021-03-16 1983 goto cleanup; e21aa341785c67 Alexei Starovoitov 2021-03-16 1984 } e21aa341785c67 Alexei Starovoitov 2021-03-16 1985 } e21aa341785c67 Alexei Starovoitov 2021-03-16 1986 88fd9e5352fe05 KP Singh 2020-03-04 1987 if (fentry->nr_progs) 88fd9e5352fe05 KP Singh 2020-03-04 1988 if (invoke_bpf(m, &prog, fentry, stack_size)) fec56f5890d93f Alexei Starovoitov 2019-11-14 1989 return -EINVAL; fec56f5890d93f Alexei Starovoitov 2019-11-14 1990 ae24082331d9bb KP Singh 2020-03-04 1991 if (fmod_ret->nr_progs) { ae24082331d9bb KP Singh 2020-03-04 1992 branches = kcalloc(fmod_ret->nr_progs, sizeof(u8 *), ae24082331d9bb KP Singh 2020-03-04 1993 GFP_KERNEL); ae24082331d9bb KP Singh 2020-03-04 1994 if (!branches) ae24082331d9bb KP Singh 2020-03-04 1995 return -ENOMEM; ae24082331d9bb KP Singh 2020-03-04 1996 ae24082331d9bb KP Singh 2020-03-04 1997 if (invoke_bpf_mod_ret(m, &prog, fmod_ret, stack_size, ae24082331d9bb KP Singh 2020-03-04 1998 branches)) { ae24082331d9bb KP Singh 2020-03-04 1999 ret = -EINVAL; ae24082331d9bb KP Singh 2020-03-04 2000 goto cleanup; ae24082331d9bb KP Singh 2020-03-04 2001 } ae24082331d9bb KP Singh 2020-03-04 2002 } ae24082331d9bb KP Singh 2020-03-04 2003 fec56f5890d93f Alexei Starovoitov 2019-11-14 2004 if (flags & BPF_TRAMP_F_CALL_ORIG) { fec56f5890d93f Alexei Starovoitov 2019-11-14 2005 restore_regs(m, &prog, nr_args, stack_size); fec56f5890d93f Alexei Starovoitov 2019-11-14 2006 fec56f5890d93f Alexei Starovoitov 2019-11-14 2007 /* call original function */ ae24082331d9bb KP Singh 2020-03-04 2008 if (emit_call(&prog, orig_call, prog)) { ae24082331d9bb KP Singh 2020-03-04 2009 ret = -EINVAL; ae24082331d9bb KP Singh 2020-03-04 2010 goto cleanup; ae24082331d9bb KP Singh 2020-03-04 2011 } fec56f5890d93f Alexei Starovoitov 2019-11-14 2012 /* remember return value in a stack for bpf prog to access */ fec56f5890d93f Alexei Starovoitov 2019-11-14 2013 emit_stx(&prog, BPF_DW, BPF_REG_FP, BPF_REG_0, -8); e21aa341785c67 Alexei Starovoitov 2021-03-16 2014 im->ip_after_call = prog; b9082970478009 Stanislav Fomichev 2021-03-19 @2015 memcpy(prog, ideal_nops[NOP_ATOMIC5], X86_PATCH_SIZE); b9082970478009 Stanislav Fomichev 2021-03-19 2016 prog += X86_PATCH_SIZE; fec56f5890d93f Alexei Starovoitov 2019-11-14 2017 } fec56f5890d93f Alexei Starovoitov 2019-11-14 2018 ae24082331d9bb KP Singh 2020-03-04 2019 if (fmod_ret->nr_progs) { ae24082331d9bb KP Singh 2020-03-04 2020 /* From Intel 64 and IA-32 Architectures Optimization ae24082331d9bb KP Singh 2020-03-04 2021 * Reference Manual, 3.4.1.4 Code Alignment, Assembly/Compiler ae24082331d9bb KP Singh 2020-03-04 2022 * Coding Rule 11: All branch targets should be 16-byte ae24082331d9bb KP Singh 2020-03-04 2023 * aligned. ae24082331d9bb KP Singh 2020-03-04 2024 */ ae24082331d9bb KP Singh 2020-03-04 2025 emit_align(&prog, 16); ae24082331d9bb KP Singh 2020-03-04 2026 /* Update the branches saved in invoke_bpf_mod_ret with the ae24082331d9bb KP Singh 2020-03-04 2027 * aligned address of do_fexit. ae24082331d9bb KP Singh 2020-03-04 2028 */ ae24082331d9bb KP Singh 2020-03-04 2029 for (i = 0; i < fmod_ret->nr_progs; i++) ae24082331d9bb KP Singh 2020-03-04 2030 emit_cond_near_jump(&branches[i], prog, branches[i], ae24082331d9bb KP Singh 2020-03-04 2031 X86_JNE); ae24082331d9bb KP Singh 2020-03-04 2032 } ae24082331d9bb KP Singh 2020-03-04 2033 88fd9e5352fe05 KP Singh 2020-03-04 2034 if (fexit->nr_progs) ae24082331d9bb KP Singh 2020-03-04 2035 if (invoke_bpf(m, &prog, fexit, stack_size)) { ae24082331d9bb KP Singh 2020-03-04 2036 ret = -EINVAL; ae24082331d9bb KP Singh 2020-03-04 2037 goto cleanup; ae24082331d9bb KP Singh 2020-03-04 2038 } fec56f5890d93f Alexei Starovoitov 2019-11-14 2039 fec56f5890d93f Alexei Starovoitov 2019-11-14 2040 if (flags & BPF_TRAMP_F_RESTORE_REGS) fec56f5890d93f Alexei Starovoitov 2019-11-14 2041 restore_regs(m, &prog, nr_args, stack_size); fec56f5890d93f Alexei Starovoitov 2019-11-14 2042 ae24082331d9bb KP Singh 2020-03-04 2043 /* This needs to be done regardless. If there were fmod_ret programs, ae24082331d9bb KP Singh 2020-03-04 2044 * the return value is only updated on the stack and still needs to be ae24082331d9bb KP Singh 2020-03-04 2045 * restored to R0. ae24082331d9bb KP Singh 2020-03-04 2046 */ e21aa341785c67 Alexei Starovoitov 2021-03-16 2047 if (flags & BPF_TRAMP_F_CALL_ORIG) { e21aa341785c67 Alexei Starovoitov 2021-03-16 2048 im->ip_epilogue = prog; e21aa341785c67 Alexei Starovoitov 2021-03-16 2049 /* arg1: mov rdi, im */ e21aa341785c67 Alexei Starovoitov 2021-03-16 2050 emit_mov_imm64(&prog, BPF_REG_1, (long) im >> 32, (u32) (long) im); e21aa341785c67 Alexei Starovoitov 2021-03-16 2051 if (emit_call(&prog, __bpf_tramp_exit, prog)) { e21aa341785c67 Alexei Starovoitov 2021-03-16 2052 ret = -EINVAL; e21aa341785c67 Alexei Starovoitov 2021-03-16 2053 goto cleanup; e21aa341785c67 Alexei Starovoitov 2021-03-16 2054 } fec56f5890d93f Alexei Starovoitov 2019-11-14 2055 /* restore original return value back into RAX */ fec56f5890d93f Alexei Starovoitov 2019-11-14 2056 emit_ldx(&prog, BPF_DW, BPF_REG_0, BPF_REG_FP, -8); e21aa341785c67 Alexei Starovoitov 2021-03-16 2057 } fec56f5890d93f Alexei Starovoitov 2019-11-14 2058 fec56f5890d93f Alexei Starovoitov 2019-11-14 2059 EMIT1(0x5B); /* pop rbx */ fec56f5890d93f Alexei Starovoitov 2019-11-14 2060 EMIT1(0xC9); /* leave */ fec56f5890d93f Alexei Starovoitov 2019-11-14 2061 if (flags & BPF_TRAMP_F_SKIP_FRAME) fec56f5890d93f Alexei Starovoitov 2019-11-14 2062 /* skip our return address and return to parent */ fec56f5890d93f Alexei Starovoitov 2019-11-14 2063 EMIT4(0x48, 0x83, 0xC4, 8); /* add rsp, 8 */ fec56f5890d93f Alexei Starovoitov 2019-11-14 2064 EMIT1(0xC3); /* ret */ 85d33df357b634 Martin KaFai Lau 2020-01-08 2065 /* Make sure the trampoline generation logic doesn't overflow */ ae24082331d9bb KP Singh 2020-03-04 2066 if (WARN_ON_ONCE(prog > (u8 *)image_end - BPF_INSN_SAFETY)) { ae24082331d9bb KP Singh 2020-03-04 2067 ret = -EFAULT; ae24082331d9bb KP Singh 2020-03-04 2068 goto cleanup; ae24082331d9bb KP Singh 2020-03-04 2069 } ae24082331d9bb KP Singh 2020-03-04 2070 ret = prog - (u8 *)image; ae24082331d9bb KP Singh 2020-03-04 2071 ae24082331d9bb KP Singh 2020-03-04 2072 cleanup: ae24082331d9bb KP Singh 2020-03-04 2073 kfree(branches); ae24082331d9bb KP Singh 2020-03-04 2074 return ret; fec56f5890d93f Alexei Starovoitov 2019-11-14 2075 } fec56f5890d93f Alexei Starovoitov 2019-11-14 2076 :::::: The code at line 2015 was first introduced by commit :::::: b9082970478009b778aa9b22d5561eef35b53b63 bpf: Use NOP_ATOMIC5 instead of emit_nops(&prog, 5) for BPF_TRAMP_F_CALL_ORIG :::::: TO: Stanislav Fomichev :::::: CC: Alexei Starovoitov --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --UugvWAfsgieZRqgk Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 --UugvWAfsgieZRqgk--