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.2 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,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 34879C4338F for ; Wed, 18 Aug 2021 11:09:39 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 18A7B6108F for ; Wed, 18 Aug 2021 11:09:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235414AbhHRLKH (ORCPT ); Wed, 18 Aug 2021 07:10:07 -0400 Received: from mga11.intel.com ([192.55.52.93]:55335 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235065AbhHRLKC (ORCPT ); Wed, 18 Aug 2021 07:10:02 -0400 X-IronPort-AV: E=McAfee;i="6200,9189,10079"; a="213180406" X-IronPort-AV: E=Sophos;i="5.84,330,1620716400"; d="gz'50?scan'50,208,50";a="213180406" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Aug 2021 04:09:27 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,330,1620716400"; d="gz'50?scan'50,208,50";a="680787794" Received: from lkp-server01.sh.intel.com (HELO d053b881505b) ([10.239.97.150]) by fmsmga005.fm.intel.com with ESMTP; 18 Aug 2021 04:09:26 -0700 Received: from kbuild by d053b881505b with local (Exim 4.92) (envelope-from ) id 1mGJRl-000SqO-EI; Wed, 18 Aug 2021 11:09:25 +0000 Date: Wed, 18 Aug 2021 19:08:36 +0800 From: kernel test robot To: Kees Cook Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org, "Gustavo A. R. Silva" Subject: [kees:kspp/array-bounds/next-20210816/v1 9/10] include/linux/fortify-string.h:20:33: warning: '__builtin_memcpy' offset [0, 511] is out of the bounds [0, 0] Message-ID: <202108181933.hLcB00YE-lkp@intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="AqsLC8rIMeq19msA" Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --AqsLC8rIMeq19msA Content-Type: text/plain; charset=us-ascii Content-Disposition: inline tree: https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git kspp/array-bounds/next-20210816/v1 head: b07d5e8190ca172b1ffddd1412b921296000b379 commit: ecc23a9ee765008e439113eea38fb1cbbd3d7c83 [9/10] Makefile: Enable -Warray-bounds config: s390-randconfig-r001-20210816 (attached as .config) compiler: s390-linux-gcc (GCC) 11.2.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git/commit/?id=ecc23a9ee765008e439113eea38fb1cbbd3d7c83 git remote add kees https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git git fetch --no-tags kees kspp/array-bounds/next-20210816/v1 git checkout ecc23a9ee765008e439113eea38fb1cbbd3d7c83 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=s390 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): In file included from include/linux/string.h:262, from include/linux/bitmap.h:10, from include/linux/cpumask.h:12, from include/linux/smp.h:13, from include/linux/lockdep.h:14, from include/linux/rcupdate.h:29, from include/linux/rculist.h:11, from include/linux/pid.h:5, from include/linux/sched.h:14, from include/linux/ratelimit.h:6, from include/linux/dev_printk.h:16, from include/linux/device.h:15, from arch/s390/kernel/machine_kexec.c:10: In function 'memcpy', inlined from '__do_machine_kdump' at arch/s390/kernel/machine_kexec.c:58:2: >> include/linux/fortify-string.h:20:33: warning: '__builtin_memcpy' offset [0, 511] is out of the bounds [0, 0] [-Warray-bounds] 20 | #define __underlying_memcpy __builtin_memcpy | ^ include/linux/fortify-string.h:191:16: note: in expansion of macro '__underlying_memcpy' 191 | return __underlying_memcpy(p, q, size); | ^~~~~~~~~~~~~~~~~~~ vim +/__builtin_memcpy +20 include/linux/fortify-string.h a28a6e860c6cf2 Francis Laniel 2021-02-25 4 a28a6e860c6cf2 Francis Laniel 2021-02-25 5 a28a6e860c6cf2 Francis Laniel 2021-02-25 6 #if defined(CONFIG_KASAN_GENERIC) || defined(CONFIG_KASAN_SW_TAGS) a28a6e860c6cf2 Francis Laniel 2021-02-25 7 extern void *__underlying_memchr(const void *p, int c, __kernel_size_t size) __RENAME(memchr); a28a6e860c6cf2 Francis Laniel 2021-02-25 8 extern int __underlying_memcmp(const void *p, const void *q, __kernel_size_t size) __RENAME(memcmp); a28a6e860c6cf2 Francis Laniel 2021-02-25 9 extern void *__underlying_memcpy(void *p, const void *q, __kernel_size_t size) __RENAME(memcpy); a28a6e860c6cf2 Francis Laniel 2021-02-25 10 extern void *__underlying_memmove(void *p, const void *q, __kernel_size_t size) __RENAME(memmove); a28a6e860c6cf2 Francis Laniel 2021-02-25 11 extern void *__underlying_memset(void *p, int c, __kernel_size_t size) __RENAME(memset); a28a6e860c6cf2 Francis Laniel 2021-02-25 12 extern char *__underlying_strcat(char *p, const char *q) __RENAME(strcat); a28a6e860c6cf2 Francis Laniel 2021-02-25 13 extern char *__underlying_strcpy(char *p, const char *q) __RENAME(strcpy); a28a6e860c6cf2 Francis Laniel 2021-02-25 14 extern __kernel_size_t __underlying_strlen(const char *p) __RENAME(strlen); a28a6e860c6cf2 Francis Laniel 2021-02-25 15 extern char *__underlying_strncat(char *p, const char *q, __kernel_size_t count) __RENAME(strncat); a28a6e860c6cf2 Francis Laniel 2021-02-25 16 extern char *__underlying_strncpy(char *p, const char *q, __kernel_size_t size) __RENAME(strncpy); a28a6e860c6cf2 Francis Laniel 2021-02-25 17 #else a28a6e860c6cf2 Francis Laniel 2021-02-25 18 #define __underlying_memchr __builtin_memchr a28a6e860c6cf2 Francis Laniel 2021-02-25 19 #define __underlying_memcmp __builtin_memcmp a28a6e860c6cf2 Francis Laniel 2021-02-25 @20 #define __underlying_memcpy __builtin_memcpy a28a6e860c6cf2 Francis Laniel 2021-02-25 21 #define __underlying_memmove __builtin_memmove a28a6e860c6cf2 Francis Laniel 2021-02-25 22 #define __underlying_memset __builtin_memset a28a6e860c6cf2 Francis Laniel 2021-02-25 23 #define __underlying_strcat __builtin_strcat a28a6e860c6cf2 Francis Laniel 2021-02-25 24 #define __underlying_strcpy __builtin_strcpy a28a6e860c6cf2 Francis Laniel 2021-02-25 25 #define __underlying_strlen __builtin_strlen a28a6e860c6cf2 Francis Laniel 2021-02-25 26 #define __underlying_strncat __builtin_strncat a28a6e860c6cf2 Francis Laniel 2021-02-25 27 #define __underlying_strncpy __builtin_strncpy a28a6e860c6cf2 Francis Laniel 2021-02-25 28 #endif a28a6e860c6cf2 Francis Laniel 2021-02-25 29 :::::: The code at line 20 was first introduced by commit :::::: a28a6e860c6cf231cf3c5171c75c342adcd00406 string.h: move fortified functions definitions in a dedicated header. :::::: TO: Francis Laniel :::::: CC: Linus Torvalds --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --AqsLC8rIMeq19msA Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 gntfQSj4/wDZErgAHOEAAA== --AqsLC8rIMeq19msA--