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  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sun, 26 Jul 2020 03:48:30 +0800
From:   kernel test robot <>
To:     B K Karthik <>,
        Herbert Xu <>,
        "David S. Miller" <>,
        Alexey Kuznetsov <>,
        Hideaki YOSHIFUJI <>,
        Jakub Kicinski <>,,,
Subject: Re: [PATCH] net: ipv6: fix slab-out-of-bounds Read in

Hi K,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on ipsec/master]
[also build test WARNING on ipsec-next/master net-next/master net/master v5.8-rc6 next-20200724]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in]

base: master
config: parisc-allyesconfig (attached as .config)
compiler: hppa-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=parisc 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <>

All warnings (new ones prefixed by >>):

   net/ipv6/xfrm6_tunnel.c: In function '__xfrm6_tunnel_spi_check':
>> net/ipv6/xfrm6_tunnel.c:106:43: warning: passing argument 1 of 'xfrm6_tunnel_spi_hash_byaddr' makes pointer from integer without a cast [-Wint-conversion]
     106 |  int index = xfrm6_tunnel_spi_hash_byaddr(spi);
         |                                           ^~~
         |                                           |
         |                                           u32 {aka unsigned int}
   net/ipv6/xfrm6_tunnel.c:57:79: note: expected 'const xfrm_address_t *' {aka 'const union <anonymous> *'} but argument is of type 'u32' {aka 'unsigned int'}
      57 | static inline unsigned int xfrm6_tunnel_spi_hash_byaddr(const xfrm_address_t *addr)
         |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~

vim +/xfrm6_tunnel_spi_hash_byaddr +106 net/ipv6/xfrm6_tunnel.c

   102	static int __xfrm6_tunnel_spi_check(struct net *net, u32 spi)
   103	{
   104		struct xfrm6_tunnel_net *xfrm6_tn = xfrm6_tunnel_pernet(net);
   105		struct xfrm6_tunnel_spi *x6spi;
 > 106		int index = xfrm6_tunnel_spi_hash_byaddr(spi);
   108		hlist_for_each_entry(x6spi,
   109				     &xfrm6_tn->spi_byaddr[index],
   110				     list_byspi) {
   111			if (x6spi->spi == spi)
   112				return -1;
   113		}
   114		return index;
   115	}

0-DAY CI Kernel Test Service, Intel Corporation

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

Powered by blists - more mailing lists