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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4330BC4332F for ; Fri, 10 Nov 2023 16:13:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5A5D58D0007; Fri, 10 Nov 2023 11:13:02 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5555F8D0005; Fri, 10 Nov 2023 11:13:02 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3F6218D0007; Fri, 10 Nov 2023 11:13:02 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 2EC5F8D0005 for ; Fri, 10 Nov 2023 11:13:02 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id F1A97B6249 for ; Fri, 10 Nov 2023 16:13:01 +0000 (UTC) X-FDA: 81442538562.19.8D94671 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.136]) by imf12.hostedemail.com (Postfix) with ESMTP id A5AF040013 for ; Fri, 10 Nov 2023 16:12:58 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=H5mBNoV+; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf12.hostedemail.com: domain of lkp@intel.com designates 192.55.52.136 as permitted sender) smtp.mailfrom=lkp@intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1699632779; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=tAkzJii1QcFt3BMPZzphnaZouwPOpeT901bOMR5I3eo=; b=DqcfrcthUGmLAtsiye2T36WfXwsAVzPCpEXa72LaQGPw8OiHhiQiopZYyxdCH5wujDXISp 7LNfw4jMWPtC+nueEZj9ulNlGp6PF6BjRFhPxv0Th/vuWRuGjs7QJNf3RUElJ96lMGCeYw B9EFUQvBxGiOITx5w/dL1eYwc5SBP94= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=H5mBNoV+; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf12.hostedemail.com: domain of lkp@intel.com designates 192.55.52.136 as permitted sender) smtp.mailfrom=lkp@intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1699632779; a=rsa-sha256; cv=none; b=ntRAKj2hSTRRZ/DhZvDqyL8scuinlPs2txboeasH45VmfifeznUf62alEKqneXjTRqxbja 5WWoQDqudwhWMrWe0/ioQlWPswhZfJbnOZzLe1Y7DcBopUtcFCiTn2uprhw7eh9Za/LzCZ D9AgHosAyqsvFin2hThneDRKhE5ryIs= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1699632778; x=1731168778; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=wUfYwyCiDGF76qwBnpKb0ZJXikuRl8lLIINyKn84nMo=; b=H5mBNoV+p73YRqDaVsJJIg0Pue+kuRmA9z3x74y8pheezlNpsRe/pq23 kzXdf8rSEOEypvOZREKZzrNkqP5MEXRWyMqR4HHXH6mJhTnz6dvDVbue4 +x4m2ZBHIgShMrdxe4+b7Fx0D4QM8qKzhHNxg8LQsv0yPHsc+RMrTv900 YYxnEe3hC4EfF/rXO20EivZLi846NMzXLXdFXrCFtokzrIsK6pjh+9B2o 0dshkaZlZCj3LJwYnSt/qxAuDXNbXcymupqiqDKb8fNbYUi/fYGLPPMic jscNXhYJUTTJB0cVRnlxmUgV1NiRy4XffknD5K8poFHTINQCeHpxQfdDK A==; X-IronPort-AV: E=McAfee;i="6600,9927,10890"; a="369533674" X-IronPort-AV: E=Sophos;i="6.03,291,1694761200"; d="scan'208";a="369533674" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Nov 2023 08:12:56 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10890"; a="713671678" X-IronPort-AV: E=Sophos;i="6.03,291,1694761200"; d="scan'208";a="713671678" Received: from lkp-server01.sh.intel.com (HELO 17d9e85e5079) ([10.239.97.150]) by orsmga003.jf.intel.com with ESMTP; 10 Nov 2023 08:12:51 -0800 Received: from kbuild by 17d9e85e5079 with local (Exim 4.96) (envelope-from ) id 1r1U7l-0009iU-0p; Fri, 10 Nov 2023 16:12:49 +0000 Date: Sat, 11 Nov 2023 00:12:03 +0800 From: kernel test robot To: Daniel Walker , Will Deacon , Christophe Leroy , Rob Herring , Daniel Gimpelevich , Andrew Morton , Pratyush Brahma , Tomas Mudrunka , Sean Anderson , x86@kernel.org, linux-mips@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Cc: oe-kbuild-all@lists.linux.dev, Linux Memory Management List , xe-linux-external@cisco.com, Ruslan Bilovol , linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/8] CMDLINE: add generic builtin command line Message-ID: <202311102331.GllFaI9t-lkp@intel.com> References: <20231110013817.2378507-2-danielwa@cisco.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231110013817.2378507-2-danielwa@cisco.com> X-Rspamd-Queue-Id: A5AF040013 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: masjk6xeft83wfdtdpoo6s478f6p574n X-HE-Tag: 1699632778-946775 X-HE-Meta: U2FsdGVkX1/zz7WizOj6MCrsTSlydah/gpVTURLfneZNx3rl+yO8ghS0W+JkEgL5zkdVmRmIu/6R5psRlrlHe6ix+b3HmVeIObn1t1CTmJXiTAhlDoSqvZ+/p+Wt5TPmbe291SGATjjB2BasPxkz64VMeZRRHkE3PILNZWHxMmzbY7CXQD1zFADX6LvUYsvF2cyH6l1YPVaEIknboxzI3rpybFMPMCaanVPn/1NrY0b/zc0awiBqr/j7vGpPcLdOneZxHPHjAVxzdASxGCkWx/WXDCDU8bdtScklwVCbEpf8ZaHdxOk/PYetqDqhn/FXucGJqBaD1cb60PXUY8ni8HkB8OjXV532QrMeoIyc50/+64uStJR/8o6hfg8PwMm9P1LKEH5k0GU3aWJ5RobEIhJWgrcnk5BbK8uAMe8tFWj1R/TyE/PPsL4r64a1/xmpu//uUuhST2/w9PTtUULcdE0bScw45BV4SDilrrVx3hcj/ulX0nQszEE9FqZDQ7J8V32jGUkCpJbBwn5YaSP8N5Fe9uKmSoPxnNgI50NykQXZ6cTmdf/nmSnQZh2RG+df0zWnT9kz6G0ib6kUhhKmDQjh46K1j+9u/LirBKQp0rK1rjuaI5DrQUE+Rl7GF0g8sxppCvSl0XUUNrNYapFyxASAO4T2hOmSKLEHmMtDAsuKtxqImDyLsfupxoYrrysP9PyhXqWUNRBCW5PxymtB7YF9tTuMr9TB2yBEvSVHh7x2isimmDMBbjTsn2gp1P+AKw7O6OvBdAopcFJPDwkEf1XfbHULZUE5gs7peVq2x510J82Z7MJY0qwTKsoG6gCurzRV92WbqXfzw6gddzn2Cp3LUqBJmE3T5nD82uOTkUWjZl+Lu5U0SYx1tBE2S0bRZ697Xwyl8Y7a4HT8mwTiCIZx6d4+ViPOvicxZrnLjIDjdG7cVIMe+rTHBHHr1BebITDkCyJa6WEEOfP8USF k+r9ZxWy kio4SXygW1WOI7ginRa1E5ezMfifwa6LVJzU1l1NlFKTmZKgzgE4vrSrr0Ug/uxMgO4WAF2cHSFhNQ4QG0nPh2h2yxJb3H71dUKIX/uDi9D3EIW1BqdTaL4r4qhIbgPcmsvDNUjvlSESSir9ptAIIBOsYIZGJqQN7ArWwT1SmKLI9BUgD9ZoEg/QAbnevBCVDks935URrwhYgpOik/XMrM5/MPsVAynTIv03D1FrDfx23T4kXlu2yleR71LuyeyDpv//63GIwUhx50EUPWLs/TnUxks0eai7vlWi65CfwN7niEY892y+WkeT56EBhPrBr9fGYdWA7AYbhiztX16P34+p1cRI5q6yKN8b4A/Il33FFWBot4n0oWhpNpnBN5ff2j8HsdkLZK1RBU3KvwbY7NC9Q81zMaFqQIEw0FCxdh4sm3uQBGFD07Vt42MR56dQo68/yzmepURqwbZGyR7Xg4/yd6x/hAsMaXEg7DxMnua9ijyG1u3COWnQKHiZCtgPocY4YpdNKtDS5es7ba5ZD1kolpyXX2PjFzKm74+ZmA+Ho7aD9LEy7+0gxTTBejP2RXPOVEI6EI1+tYwKXo95R4nuh9OHmtaGzbE+BlG4WpOkUGMECLRLsKXh12jWSMwmKCjyuVoTHDcWYmf1dvh0S16FSjg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hi Daniel, kernel test robot noticed the following build errors: [auto build test ERROR on v6.6] [cannot apply to arm64/for-next/core efi/next tip/x86/core robh/for-next linus/master next-20231110] [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/Daniel-Walker/CMDLINE-add-generic-builtin-command-line/20231110-094423 base: v6.6 patch link: https://lore.kernel.org/r/20231110013817.2378507-2-danielwa%40cisco.com patch subject: [PATCH 1/8] CMDLINE: add generic builtin command line config: sparc-allyesconfig (https://download.01.org/0day-ci/archive/20231110/202311102331.GllFaI9t-lkp@intel.com/config) compiler: sparc64-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231110/202311102331.GllFaI9t-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/202311102331.GllFaI9t-lkp@intel.com/ All error/warnings (new ones prefixed by >>): In file included from include/linux/kernel.h:15, from include/linux/interrupt.h:6, from arch/sparc/include/asm/setup.h:8, from lib/generic_cmdline.S:5: >> include/linux/align.h:8: warning: "ALIGN" redefined 8 | #define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) | In file included from include/linux/export.h:6, from lib/generic_cmdline.S:2: include/linux/linkage.h:103: note: this is the location of the previous definition 103 | #define ALIGN __ALIGN | In file included from include/linux/kcsan-checks.h:13, from include/linux/instrumented.h:12, from include/linux/atomic/atomic-instrumented.h:17, from include/linux/atomic.h:82, from include/asm-generic/bitops/lock.h:5, from arch/sparc/include/asm/bitops_64.h:52, from arch/sparc/include/asm/bitops.h:5, from include/linux/bitops.h:68, from include/linux/kernel.h:22: >> include/linux/compiler_attributes.h:55: warning: "__always_inline" redefined 55 | #define __always_inline inline __attribute__((__always_inline__)) | In file included from include/linux/stddef.h:5, from include/linux/kernel.h:18: include/uapi/linux/stddef.h:8: note: this is the location of the previous definition 8 | #define __always_inline inline | >> include/linux/compiler_attributes.h:91:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 91 | #if __has_attribute(__copy__) | ^~~~~~~~~~~~~~~ >> include/linux/compiler_attributes.h:91:20: error: missing binary operator before token "(" 91 | #if __has_attribute(__copy__) | ^ include/linux/compiler_attributes.h:104:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 104 | #if __has_attribute(__counted_by__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:104:20: error: missing binary operator before token "(" 104 | #if __has_attribute(__counted_by__) | ^ >> include/linux/compiler_attributes.h:107: warning: "__counted_by" redefined 107 | # define __counted_by(member) | include/uapi/linux/stddef.h:55: note: this is the location of the previous definition 55 | #define __counted_by(m) | include/linux/compiler_attributes.h:116:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 116 | #if __has_attribute(__diagnose_as_builtin__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:116:20: error: missing binary operator before token "(" 116 | #if __has_attribute(__diagnose_as_builtin__) | ^ include/linux/compiler_attributes.h:139:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 139 | #if __has_attribute(__designated_init__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:139:20: error: missing binary operator before token "(" 139 | #if __has_attribute(__designated_init__) | ^ include/linux/compiler_attributes.h:150:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 150 | #if __has_attribute(__error__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:150:20: error: missing binary operator before token "(" 150 | #if __has_attribute(__error__) | ^ include/linux/compiler_attributes.h:161:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 161 | #if __has_attribute(__externally_visible__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:161:20: error: missing binary operator before token "(" 161 | #if __has_attribute(__externally_visible__) | ^ include/linux/compiler_attributes.h:198:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 198 | #if __has_attribute(__no_caller_saved_registers__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:198:20: error: missing binary operator before token "(" 198 | #if __has_attribute(__no_caller_saved_registers__) | ^ include/linux/compiler_attributes.h:209:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 209 | #if __has_attribute(__noclone__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:209:20: error: missing binary operator before token "(" 209 | #if __has_attribute(__noclone__) | ^ include/linux/compiler_attributes.h:226:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 226 | #if __has_attribute(__fallthrough__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:226:20: error: missing binary operator before token "(" 226 | #if __has_attribute(__fallthrough__) | ^ include/linux/compiler_attributes.h:252:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 252 | #if __has_attribute(__nonstring__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:252:20: error: missing binary operator before token "(" 252 | #if __has_attribute(__nonstring__) | ^ include/linux/compiler_attributes.h:264:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 264 | #if __has_attribute(__no_profile_instrument_function__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:264:20: error: missing binary operator before token "(" 264 | #if __has_attribute(__no_profile_instrument_function__) | ^ include/linux/compiler_attributes.h:283:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 283 | #if __has_attribute(__no_stack_protector__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:283:20: error: missing binary operator before token "(" 283 | #if __has_attribute(__no_stack_protector__) | ^ include/linux/compiler_attributes.h:294:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 294 | #if __has_attribute(__overloadable__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:294:20: error: missing binary operator before token "(" 294 | #if __has_attribute(__overloadable__) | ^ include/linux/compiler_attributes.h:313:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 313 | #if __has_attribute(__pass_dynamic_object_size__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:313:20: error: missing binary operator before token "(" 313 | #if __has_attribute(__pass_dynamic_object_size__) | ^ include/linux/compiler_attributes.h:318:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 318 | #if __has_attribute(__pass_object_size__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:318:20: error: missing binary operator before token "(" 318 | #if __has_attribute(__pass_object_size__) | ^ include/linux/compiler_attributes.h:363:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 363 | #if __has_attribute(__warning__) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:363:20: error: missing binary operator before token "(" 363 | #if __has_attribute(__warning__) | ^ include/linux/compiler_attributes.h:380:5: warning: "__has_attribute" is not defined, evaluates to 0 [-Wundef] 380 | #if __has_attribute(disable_sanitizer_instrumentation) | ^~~~~~~~~~~~~~~ include/linux/compiler_attributes.h:380:20: error: missing binary operator before token "(" 380 | #if __has_attribute(disable_sanitizer_instrumentation) | ^ vim +91 include/linux/compiler_attributes.h 86cffecdeaa278 Kees Cook 2021-11-05 45 a3f8a30f3f0079 Miguel Ojeda 2018-08-30 46 /* a3f8a30f3f0079 Miguel Ojeda 2018-08-30 47 * Note: users of __always_inline currently do not write "inline" themselves, a3f8a30f3f0079 Miguel Ojeda 2018-08-30 48 * which seems to be required by gcc to apply the attribute according a3f8a30f3f0079 Miguel Ojeda 2018-08-30 49 * to its docs (and also "warning: always_inline function might not be a3f8a30f3f0079 Miguel Ojeda 2018-08-30 50 * inlinable [-Wattributes]" is emitted). a3f8a30f3f0079 Miguel Ojeda 2018-08-30 51 * a3f8a30f3f0079 Miguel Ojeda 2018-08-30 52 * gcc: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-always_005finline-function-attribute a3f8a30f3f0079 Miguel Ojeda 2018-08-30 53 * clang: mentioned a3f8a30f3f0079 Miguel Ojeda 2018-08-30 54 */ a3f8a30f3f0079 Miguel Ojeda 2018-08-30 @55 #define __always_inline inline __attribute__((__always_inline__)) a3f8a30f3f0079 Miguel Ojeda 2018-08-30 56 a3f8a30f3f0079 Miguel Ojeda 2018-08-30 57 /* a3f8a30f3f0079 Miguel Ojeda 2018-08-30 58 * The second argument is optional (default 0), so we use a variadic macro a3f8a30f3f0079 Miguel Ojeda 2018-08-30 59 * to make the shorthand. a3f8a30f3f0079 Miguel Ojeda 2018-08-30 60 * a3f8a30f3f0079 Miguel Ojeda 2018-08-30 61 * Beware: Do not apply this to functions which may return a3f8a30f3f0079 Miguel Ojeda 2018-08-30 62 * ERR_PTRs. Also, it is probably unwise to apply it to functions a3f8a30f3f0079 Miguel Ojeda 2018-08-30 63 * returning extra information in the low bits (but in that case the a3f8a30f3f0079 Miguel Ojeda 2018-08-30 64 * compiler should see some alignment anyway, when the return value is a3f8a30f3f0079 Miguel Ojeda 2018-08-30 65 * massaged by 'flags = ptr & 3; ptr &= ~3;'). a3f8a30f3f0079 Miguel Ojeda 2018-08-30 66 * a3f8a30f3f0079 Miguel Ojeda 2018-08-30 67 * gcc: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-assume_005faligned-function-attribute a3f8a30f3f0079 Miguel Ojeda 2018-08-30 68 * clang: https://clang.llvm.org/docs/AttributeReference.html#assume-aligned a3f8a30f3f0079 Miguel Ojeda 2018-08-30 69 */ a3f8a30f3f0079 Miguel Ojeda 2018-08-30 70 #define __assume_aligned(a, ...) __attribute__((__assume_aligned__(a, ## __VA_ARGS__))) a3f8a30f3f0079 Miguel Ojeda 2018-08-30 71 54da6a0924311c Peter Zijlstra 2023-05-26 72 /* 54da6a0924311c Peter Zijlstra 2023-05-26 73 * gcc: https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attributes.html#index-cleanup-variable-attribute 54da6a0924311c Peter Zijlstra 2023-05-26 74 * clang: https://clang.llvm.org/docs/AttributeReference.html#cleanup 54da6a0924311c Peter Zijlstra 2023-05-26 75 */ 54da6a0924311c Peter Zijlstra 2023-05-26 76 #define __cleanup(func) __attribute__((__cleanup__(func))) 54da6a0924311c Peter Zijlstra 2023-05-26 77 a3f8a30f3f0079 Miguel Ojeda 2018-08-30 78 /* a3f8a30f3f0079 Miguel Ojeda 2018-08-30 79 * Note the long name. a3f8a30f3f0079 Miguel Ojeda 2018-08-30 80 * a3f8a30f3f0079 Miguel Ojeda 2018-08-30 81 * gcc: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-const-function-attribute a3f8a30f3f0079 Miguel Ojeda 2018-08-30 82 */ a3f8a30f3f0079 Miguel Ojeda 2018-08-30 83 #define __attribute_const__ __attribute__((__const__)) a3f8a30f3f0079 Miguel Ojeda 2018-08-30 84 c0d9782f5b6d71 Miguel Ojeda 2019-02-08 85 /* c0d9782f5b6d71 Miguel Ojeda 2019-02-08 86 * Optional: only supported since gcc >= 9 c0d9782f5b6d71 Miguel Ojeda 2019-02-08 87 * Optional: not supported by clang c0d9782f5b6d71 Miguel Ojeda 2019-02-08 88 * c0d9782f5b6d71 Miguel Ojeda 2019-02-08 89 * gcc: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-copy-function-attribute c0d9782f5b6d71 Miguel Ojeda 2019-02-08 90 */ c0d9782f5b6d71 Miguel Ojeda 2019-02-08 @91 #if __has_attribute(__copy__) c0d9782f5b6d71 Miguel Ojeda 2019-02-08 92 # define __copy(symbol) __attribute__((__copy__(symbol))) c0d9782f5b6d71 Miguel Ojeda 2019-02-08 93 #else c0d9782f5b6d71 Miguel Ojeda 2019-02-08 94 # define __copy(symbol) c0d9782f5b6d71 Miguel Ojeda 2019-02-08 95 #endif c0d9782f5b6d71 Miguel Ojeda 2019-02-08 96 c8248faf3ca276 Kees Cook 2023-08-17 97 /* c8248faf3ca276 Kees Cook 2023-08-17 98 * Optional: only supported since gcc >= 14 c8248faf3ca276 Kees Cook 2023-08-17 99 * Optional: only supported since clang >= 18 c8248faf3ca276 Kees Cook 2023-08-17 100 * c8248faf3ca276 Kees Cook 2023-08-17 101 * gcc: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108896 c8248faf3ca276 Kees Cook 2023-08-17 102 * clang: https://reviews.llvm.org/D148381 c8248faf3ca276 Kees Cook 2023-08-17 103 */ c8248faf3ca276 Kees Cook 2023-08-17 104 #if __has_attribute(__counted_by__) c8248faf3ca276 Kees Cook 2023-08-17 105 # define __counted_by(member) __attribute__((__counted_by__(member))) c8248faf3ca276 Kees Cook 2023-08-17 106 #else c8248faf3ca276 Kees Cook 2023-08-17 @107 # define __counted_by(member) c8248faf3ca276 Kees Cook 2023-08-17 108 #endif c8248faf3ca276 Kees Cook 2023-08-17 109 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki