From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A4D402E5407; Mon, 10 Nov 2025 17:48:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.11 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762796903; cv=none; b=QCDcIYLcAhYcmcCxFHO6avNGP8TSfcgJkdaQbHYyiyNvWCUil5sVCl+HIC42epCEju3uBnPiUzHxWy7kG8Ydg6gYsCkGJ4mbGH/UrTZ20ENplJVxRLTUe24O1E8X5+4UG2A5JBbVxbsnbdAsSZ9kaQQphyS/5PnoHva6nN7w9T8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762796903; c=relaxed/simple; bh=PBhGYG1Welq8HIr6/Eg4O9bQLBhw9HZVRcUiW+PyXlo=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=cNvqtbL1NYacxdmbp/af3sJfxAgfJ69ADw1RYNJyQVdpWVfhOwolYrVGpItmK2oIbEpyJqVw+/mizLtlSfaxZPAa3fy75uccDLfos5z6Lw6u5A70XAzpc3fOhbNc32Qt8rIjhVc+3Beke4yyWrbFQoXuLUc3gBPar3iJmLCHXZc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=mROsNckL; arc=none smtp.client-ip=192.198.163.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="mROsNckL" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1762796901; x=1794332901; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=PBhGYG1Welq8HIr6/Eg4O9bQLBhw9HZVRcUiW+PyXlo=; b=mROsNckLsusFawOvmC6bfo2yLqzmQEMc+VjCoRApeIpGLxWrP8r7F3iW MKPfWjLtG8iUmcYtLP5o1gwFZD1YRv15G4w2paWf8gQtGupI0HGMqlRtK 48X23PB/dLGlrMzVrBiphS2QQJmw2+yU+LPgKk4vTBdsZeqJZTXxPH2qT SeNgWNp0yar0jqeo3KzM0QVEUyjTdeAOcIUxexhkmBjB8Hmn/eeCg6C1w tGKfsCONWq6fb7dxjj2fnJyD0Gv6JZyMR+tNKpjZCBsch3dB9SCiCiHVZ WPxhwQkXKUCOiV6j9CdRaCitmSUhlkHN+7DlF3+W+ooiG3AYOgdlS54vr A==; X-CSE-ConnectionGUID: vMh0vEOlTsCDR26cKRKv2A== X-CSE-MsgGUID: /d93APFgSVmhc73Ui729FA== X-IronPort-AV: E=McAfee;i="6800,10657,11609"; a="75462921" X-IronPort-AV: E=Sophos;i="6.19,294,1754982000"; d="scan'208";a="75462921" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Nov 2025 09:48:21 -0800 X-CSE-ConnectionGUID: j6X54M9WSKCVMnW4BeP3NA== X-CSE-MsgGUID: 7Fg9QX7KRO2x1QPQxx978g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.19,294,1754982000"; d="scan'208";a="193113288" Received: from lkp-server01.sh.intel.com (HELO 7b01c990427b) ([10.239.97.150]) by orviesa004.jf.intel.com with ESMTP; 10 Nov 2025 09:48:18 -0800 Received: from kbuild by 7b01c990427b with local (Exim 4.96) (envelope-from ) id 1vIVzz-0000mZ-0L; Mon, 10 Nov 2025 17:48:15 +0000 Date: Tue, 11 Nov 2025 01:47:19 +0800 From: kernel test robot To: Alejandro Colomar , linux-kernel@vger.kernel.org Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev, Alejandro Colomar , Marco Elver , Kees Cook , Christopher Bazley , Alexander Potapenko , Dmitry Vyukov , Jann Horn , Andrew Morton , Linux Memory Management List , Rasmus Villemoes , Michal Hocko , Al Viro Subject: Re: [PATCH v1 2/3] mm: Fix benign off-by-one bugs Message-ID: <202511110100.9uPtQqN1-lkp@intel.com> References: <87445e701574058b142e036c3b8a0f505086ab64.1758806023.git.alx@kernel.org> Precedence: bulk X-Mailing-List: llvm@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87445e701574058b142e036c3b8a0f505086ab64.1758806023.git.alx@kernel.org> Hi Alejandro, kernel test robot noticed the following build errors: [auto build test ERROR on akpm-mm/mm-everything] [also build test ERROR on kees/for-next/pstore kees/for-next/kspp linus/master linux/master v6.18-rc5 next-20251110] [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 https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Alejandro-Colomar/array_size-h-Add-ARRAY_END/20251110-075203 base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything patch link: https://lore.kernel.org/r/87445e701574058b142e036c3b8a0f505086ab64.1758806023.git.alx%40kernel.org patch subject: [PATCH v1 2/3] mm: Fix benign off-by-one bugs config: loongarch-randconfig-001-20251110 (https://download.01.org/0day-ci/archive/20251111/202511110100.9uPtQqN1-lkp@intel.com/config) compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 996639d6ebb86ff15a8c99b67f1c2e2117636ae7) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251111/202511110100.9uPtQqN1-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202511110100.9uPtQqN1-lkp@intel.com/ All errors (new ones prefixed by >>): >> mm/kfence/kfence_test.c:113:8: error: call to undeclared function 'ENDOF'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 113 | end = ENDOF(expect[0]); | ^ >> mm/kfence/kfence_test.c:113:6: error: incompatible integer to pointer conversion assigning to 'const char *' from 'int' [-Wint-conversion] 113 | end = ENDOF(expect[0]); | ^ ~~~~~~~~~~~~~~~~ mm/kfence/kfence_test.c:143:6: error: incompatible integer to pointer conversion assigning to 'const char *' from 'int' [-Wint-conversion] 143 | end = ENDOF(expect[1]); | ^ ~~~~~~~~~~~~~~~~ 3 errors generated. vim +/ENDOF +113 mm/kfence/kfence_test.c 94 95 /* Check observed report matches information in @r. */ 96 static bool report_matches(const struct expect_report *r) 97 { 98 unsigned long addr = (unsigned long)r->addr; 99 bool ret = false; 100 unsigned long flags; 101 typeof(observed.lines) expect; 102 const char *end; 103 char *cur; 104 105 /* Doubled-checked locking. */ 106 if (!report_available()) 107 return false; 108 109 /* Generate expected report contents. */ 110 111 /* Title */ 112 cur = expect[0]; > 113 end = ENDOF(expect[0]); 114 switch (r->type) { 115 case KFENCE_ERROR_OOB: 116 cur += scnprintf(cur, end - cur, "BUG: KFENCE: out-of-bounds %s", 117 get_access_type(r)); 118 break; 119 case KFENCE_ERROR_UAF: 120 cur += scnprintf(cur, end - cur, "BUG: KFENCE: use-after-free %s", 121 get_access_type(r)); 122 break; 123 case KFENCE_ERROR_CORRUPTION: 124 cur += scnprintf(cur, end - cur, "BUG: KFENCE: memory corruption"); 125 break; 126 case KFENCE_ERROR_INVALID: 127 cur += scnprintf(cur, end - cur, "BUG: KFENCE: invalid %s", 128 get_access_type(r)); 129 break; 130 case KFENCE_ERROR_INVALID_FREE: 131 cur += scnprintf(cur, end - cur, "BUG: KFENCE: invalid free"); 132 break; 133 } 134 135 scnprintf(cur, end - cur, " in %pS", r->fn); 136 /* The exact offset won't match, remove it; also strip module name. */ 137 cur = strchr(expect[0], '+'); 138 if (cur) 139 *cur = '\0'; 140 141 /* Access information */ 142 cur = expect[1]; 143 end = ENDOF(expect[1]); 144 145 switch (r->type) { 146 case KFENCE_ERROR_OOB: 147 cur += scnprintf(cur, end - cur, "Out-of-bounds %s at", get_access_type(r)); 148 addr = arch_kfence_test_address(addr); 149 break; 150 case KFENCE_ERROR_UAF: 151 cur += scnprintf(cur, end - cur, "Use-after-free %s at", get_access_type(r)); 152 addr = arch_kfence_test_address(addr); 153 break; 154 case KFENCE_ERROR_CORRUPTION: 155 cur += scnprintf(cur, end - cur, "Corrupted memory at"); 156 break; 157 case KFENCE_ERROR_INVALID: 158 cur += scnprintf(cur, end - cur, "Invalid %s at", get_access_type(r)); 159 addr = arch_kfence_test_address(addr); 160 break; 161 case KFENCE_ERROR_INVALID_FREE: 162 cur += scnprintf(cur, end - cur, "Invalid free of"); 163 break; 164 } 165 166 cur += scnprintf(cur, end - cur, " 0x%p", (void *)addr); 167 168 spin_lock_irqsave(&observed.lock, flags); 169 if (!report_available()) 170 goto out; /* A new report is being captured. */ 171 172 /* Finally match expected output to what we actually observed. */ 173 ret = strstr(observed.lines[0], expect[0]) && strstr(observed.lines[1], expect[1]); 174 out: 175 spin_unlock_irqrestore(&observed.lock, flags); 176 return ret; 177 } 178 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki