lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 26 Nov 2018 10:22:41 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Ard Biesheuvel <ard.biesheuvel@...aro.org>
Cc:     kbuild-all@...org, linux-kernel@...r.kernel.org,
        Ard Biesheuvel <ard.biesheuvel@...aro.org>,
        Daniel Borkmann <daniel@...earbox.net>,
        Alexei Starovoitov <ast@...nel.org>,
        Rick Edgecombe <rick.p.edgecombe@...el.com>,
        Eric Dumazet <eric.dumazet@...il.com>,
        Jann Horn <jannh@...gle.com>,
        Kees Cook <keescook@...omium.org>,
        Jessica Yu <jeyu@...nel.org>, Arnd Bergmann <arnd@...db.de>,
        Catalin Marinas <catalin.marinas@....com>,
        Will Deacon <will.deacon@....com>,
        Mark Rutland <mark.rutland@....com>,
        "David S. Miller" <davem@...emloft.net>,
        linux-arm-kernel@...ts.infradead.org, netdev@...r.kernel.org
Subject: Re: [PATCH v3 2/2] arm64/bpf: don't allocate BPF JIT programs in
 module memory

Hi Ard,

I love your patch! Perhaps something to improve:

[auto build test WARNING on arm64/for-next/core]
[also build test WARNING on v4.20-rc4 next-20181123]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Ard-Biesheuvel/bpf-permit-JIT-allocations-to-be-served-outside-the-module-region/20181126-024110
base:   https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core
config: x86_64-allmodconfig (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All warnings (new ones prefixed by >>):

   include/linux/slab.h:332:43: warning: dubious: x & !y
   kernel/bpf/core.c:612:6: warning: symbol 'bpf_jit_alloc_exec' was not declared. Should it be static?
>> kernel/bpf/core.c:619:24: warning: incorrect type in argument 1 (different modifiers)
   kernel/bpf/core.c:619:24:    expected void *module_region
   kernel/bpf/core.c:619:24:    got void const *addr
   kernel/bpf/core.c:617:13: warning: symbol 'bpf_jit_free_exec' was not declared. Should it be static?
   include/linux/slab.h:332:43: warning: dubious: x & !y
   kernel/bpf/core.c:1608:9: warning: incorrect type in argument 1 (different address spaces)
   kernel/bpf/core.c:1608:9:    expected struct callback_head *head
   kernel/bpf/core.c:1608:9:    got struct callback_head [noderef] <asn:4>*<noident>
   include/linux/slab.h:332:43: warning: dubious: x & !y
   kernel/bpf/core.c:1682:44: warning: incorrect type in initializer (different address spaces)
   kernel/bpf/core.c:1682:44:    expected struct bpf_prog_array_item *item
   kernel/bpf/core.c:1682:44:    got struct bpf_prog_array_item [noderef] <asn:4>*<noident>
   kernel/bpf/core.c:1706:26: warning: incorrect type in assignment (different address spaces)
   kernel/bpf/core.c:1706:26:    expected struct bpf_prog_array_item *existing
   kernel/bpf/core.c:1706:26:    got struct bpf_prog_array_item [noderef] <asn:4>*<noident>
   kernel/bpf/core.c:1740:26: warning: incorrect type in assignment (different address spaces)
   kernel/bpf/core.c:1740:26:    expected struct bpf_prog_array_item *[assigned] existing
   kernel/bpf/core.c:1740:26:    got struct bpf_prog_array_item [noderef] <asn:4>*<noident>
   include/trace/events/xdp.h:28:1: warning: Using plain integer as NULL pointer
   include/trace/events/xdp.h:53:1: warning: Using plain integer as NULL pointer
   include/trace/events/xdp.h:111:1: warning: Using plain integer as NULL pointer
   include/trace/events/xdp.h:126:1: warning: Using plain integer as NULL pointer
   include/trace/events/xdp.h:161:1: warning: Using plain integer as NULL pointer
   include/trace/events/xdp.h:196:1: warning: Using plain integer as NULL pointer
   include/trace/events/xdp.h:231:1: warning: Using plain integer as NULL pointer
   kernel/bpf/core.c:999:18: warning: Initializer entry defined twice
   kernel/bpf/core.c:1001:17:   also defined here
   kernel/bpf/core.c: In function 'bpf_jit_free_exec':
   kernel/bpf/core.c:619:17: warning: passing argument 1 of 'module_memfree' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     module_memfree(addr);
                    ^~~~
   In file included from kernel/bpf/core.c:28:0:
   include/linux/moduleloader.h:30:6: note: expected 'void *' but argument is of type 'const void *'
    void module_memfree(void *module_region);
         ^~~~~~~~~~~~~~

vim +619 kernel/bpf/core.c

ede95a63b Daniel Borkmann 2018-10-23  611  
eff59cbcb Ard Biesheuvel  2018-11-23 @612  void *__weak bpf_jit_alloc_exec(unsigned long size)
eff59cbcb Ard Biesheuvel  2018-11-23  613  {
eff59cbcb Ard Biesheuvel  2018-11-23  614  	return module_alloc(size);
eff59cbcb Ard Biesheuvel  2018-11-23  615  }
eff59cbcb Ard Biesheuvel  2018-11-23  616  
eff59cbcb Ard Biesheuvel  2018-11-23  617  void __weak bpf_jit_free_exec(const void *addr)
eff59cbcb Ard Biesheuvel  2018-11-23  618  {
eff59cbcb Ard Biesheuvel  2018-11-23 @619  	module_memfree(addr);
eff59cbcb Ard Biesheuvel  2018-11-23  620  }
eff59cbcb Ard Biesheuvel  2018-11-23  621  

:::::: The code at line 619 was first introduced by commit
:::::: eff59cbcb348cb3df3fd41aba28df574c6cf7c27 bpf: add __weak hook for allocating executable memory

:::::: TO: Ard Biesheuvel <ard.biesheuvel@...aro.org>
:::::: CC: 0day robot <lkp@...el.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (66620 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ