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 0A4B2C6FD1F for ; Tue, 2 Apr 2024 07:08:24 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 915546B0093; Tue, 2 Apr 2024 03:08:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8C5C46B0095; Tue, 2 Apr 2024 03:08:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 78EC56B0098; Tue, 2 Apr 2024 03:08:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 558A96B0093 for ; Tue, 2 Apr 2024 03:08:23 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id F042914091B for ; Tue, 2 Apr 2024 07:08:22 +0000 (UTC) X-FDA: 81963713244.23.8E9E4BC Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.12]) by imf13.hostedemail.com (Postfix) with ESMTP id 155F820015 for ; Tue, 2 Apr 2024 07:08:19 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=PNYwWJna; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf13.hostedemail.com: domain of lkp@intel.com designates 198.175.65.12 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=1712041701; 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: references:dkim-signature; bh=nxCy907BFVH+Do3deDTWu6nGtFw4f+OIkZU0M+4f77M=; b=D4JIY4EH9IQUYTGkXSliN62bh5mkIX70aI/JXxHZC8xWNOIiqCw15P8ASa54RBPIOkdiU0 nVW3QohtRsKg9FxN6lt7NU9i4DZiS1/U+uKrYH1ZDMfplWxA6xlJFBhcWOUIyCvRuCxX46 nxEXm+s2+SQp5mXW9gaZlBYD1ROx//Y= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=PNYwWJna; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf13.hostedemail.com: domain of lkp@intel.com designates 198.175.65.12 as permitted sender) smtp.mailfrom=lkp@intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1712041701; a=rsa-sha256; cv=none; b=46Cq/DhmWzAjdoJNz6ZKPn7CHxFoE+VVWJ4BRStptUSYSAyCqjd04uBFWzMb3h2DYCUlYv teIyOuQqPxJaftoFxshyCtEI1R+WefWMFI46z2RAolnuieSvTtkTFzNdPiWuWN4GV+gNvT VCH8WMZ8VMGSkGS9vjB0GQLTFBGYezc= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1712041700; x=1743577700; h=date:from:to:cc:subject:message-id:mime-version; bh=0IGzbOIGZ4Hzl9EAiDL2+hhhqdrmtTSnQ0aJxT6S7tM=; b=PNYwWJnamGOMdvUhvpivRgu//es3kmUTwLZ8HHyppKdjaVwUM3qUf3tc mxefrx/wq9jhfmt9/vB+Min8QMjxF8Z9GFDsckxJDAMvqbyQKXO2PrKom fQYL6fyeeO1FITYwCsHjHI9U3Gi2epAoF3U9s2Nr1Lrvc5JAu52eddeHT hkplS9dI+3/2+KwvZlDrc8FBuCGHAGZDAEj+OiJg3JeSOuGzTwqWRTczc F3O8sRvrCBLCDDcbMTBiN0IHT7ZsCa2Y4OeYb9zULZbBMhv0JUX0JAb3u +9H58Q3cMziUqlMBKpB90RWjv60+0tKOTB4RbWLuKG3YC3SYmi2x/r/Xx A==; X-CSE-ConnectionGUID: Wzh/YuYgR6atMNG3mXPFjQ== X-CSE-MsgGUID: KOLlhYjQRZmo7FW7hHPuxg== X-IronPort-AV: E=McAfee;i="6600,9927,11031"; a="18643789" X-IronPort-AV: E=Sophos;i="6.07,174,1708416000"; d="scan'208";a="18643789" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by orvoesa104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Apr 2024 00:08:19 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,174,1708416000"; d="scan'208";a="18021166" Received: from lkp-server02.sh.intel.com (HELO 90ee3aa53dbd) ([10.239.97.151]) by fmviesa009.fm.intel.com with ESMTP; 02 Apr 2024 00:08:16 -0700 Received: from kbuild by 90ee3aa53dbd with local (Exim 4.96) (envelope-from ) id 1rrYFi-0000zR-27; Tue, 02 Apr 2024 07:08:14 +0000 Date: Tue, 2 Apr 2024 15:08:07 +0800 From: kernel test robot To: "Paul E. McKenney" Cc: oe-kbuild-all@lists.linux.dev, Linux Memory Management List Subject: [linux-next:master 2559/3220] arch/riscv/include/asm/cmpxchg.h:329:23: warning: assignment to 'struct tty_struct *' from 'uintptr_t' {aka 'long unsigned int'} makes pointer from integer without a cast Message-ID: <202404021504.YTP51bL3-lkp@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 155F820015 X-Stat-Signature: ymq4p7xms9odeegg8u7rpykcxzfuhuxm X-HE-Tag: 1712041699-245998 X-HE-Meta: U2FsdGVkX18daIePjgL6/yj4yux+eGV/5vR6yqoqnEAy23g0NSG3uarv619CZAnZnKlv0M9rUzcam1rLgQ1oj7nP6AN/oAYiY1jC1t5dxfWLBwjYTkGRBMl9NV5dNCom1Zm0JZQFEd0bSW5qipBsxkph5WBKmxAYS18eWIG2r5M1qB68ifkMjktd/LdwKAia4ULBT1qqGWle4D7/gdTCy3vSGxarzNblNhW3NnS7j9YlVU6FI7u3D8oJBuKJVGmTMCPd25tkLJiIuNMXxiKyxAhy5+a4+ccvakt1w+ah5JU0yNAL26GWJb6+U9RFQvbjrCtuJsKk/ogTo4xOnN+L2jtPy0G3wOOcyQwhNvu2WIj2p8yLlE3qjCbYBRsd/kme5j6qONwtNkLcenuNp423fgUaU2N4VJvchWnyysFeYlNRpkOofzoOklHgWQcfvg4sp84z/Ml2ELoR8R/hTXhFD2FZmj84PRXywJeVYUvwc3zjTfQXYHAKli4uWY/SOVsIlGLiyM/tB6DzwsnwUS00k1f86sxrQs852S1sCs8s6gG2Q12glcpZh2bCFnrHwwYjeGt489rGfLfZgsIouTZ8AS2OuIplS+oU1E6D8Moh+9SxEk0GTyHRNyxxIAdR/jUXfmrMJF81tlf56IFpm+bhhh4QIwYWDE1QbuKcMBt4rBQ/YnRTS0v++WwHNltqfJaafBduTlzCivuqBMKUdtB1uAGoeWRrIVL+rh3zQbOrR8i0OTRFD7XcIFP0h6zWq86eY1haReWTA5zseEJhme8ZbkxVPuCTW6Ir5nWK3JF9+H/00Z2T7kqe4OU0Z6tYwBTpeF/d2eVo8RqX1t6pYP5bg4NDg3t0hsRFX3HmJZbnJ5OWcG72deTyjLUk7tRm5QiagnLimZFfH+Xh7f4tsCDKXWjqgmjyuV3w5IoViAUdi/Uftau4S9g26Pt3wZNKhh/Zb6/H5WjRKlfmNpvVSh1 wOdC+fM5 2egtAIEZdffjLInXpxgJP10xQdRKbVpsrzxg+IWeFOVxSYiimCdsQ6xvCvJHcJ8TKbCXl5ERwcDeXB+GGrtj8xEBXuMUZRlZgI/63m2OS5QUf3DqwYZkpbrKB353zWk3UABbWWxeRneCFP3wH/0vRPzhn9R4zRVJvLZXE6gyS6h6sg1lV+KXAiaCU4msLrHmNRNJEZB4N6JAn3kS3aA0Dw7A2lj8L9o0upWTjiy9YBCZeQ1tP26CqC0fTZp2qUiSLQ3jTBgTasATxtGPOoeonscZHJUYKupu1jI+jJzVryiiZinvbmZIagcO2zTwmLmVdZTKsoRf78YsNQ9WGRGi8Jj97zLICYXQlqKFM 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: tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: c0b832517f627ead3388c6f0c74e8ac10ad5774b commit: df35ee400e06b23ecd44fdb66451a5343932f834 [2559/3220] riscv: Emulate one-byte and two-byte cmpxchg config: riscv-randconfig-r061-20240402 (https://download.01.org/0day-ci/archive/20240402/202404021504.YTP51bL3-lkp@intel.com/config) compiler: riscv64-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240402/202404021504.YTP51bL3-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/202404021504.YTP51bL3-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from arch/riscv/include/asm/atomic.h:19, from include/linux/atomic.h:7, from include/linux/cpumask.h:14, from include/linux/smp.h:13, from include/linux/lockdep.h:14, from include/linux/spinlock.h:63, from include/linux/mmzone.h:8, from include/linux/gfp.h:7, from include/linux/slab.h:16, from drivers/accessibility/speakup/selection.c:2: drivers/accessibility/speakup/selection.c: In function 'speakup_set_selection': arch/riscv/include/asm/cmpxchg.h:329:62: warning: passing argument 2 of 'cmpxchg_emu_u8' makes integer from pointer without a cast [-Wint-conversion] 329 | __ret = cmpxchg_emu_u8((volatile u8 *)__ptr, __old, __new); \ | ^~~~~ | | | struct tty_struct * arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:71:13: note: in expansion of macro 'cmpxchg' 71 | if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { | ^~~~~~~ In file included from arch/riscv/include/asm/cmpxchg.h:12: include/linux/cmpxchg-emu.h:13:52: note: expected 'uintptr_t' {aka 'long unsigned int'} but argument is of type 'struct tty_struct *' 13 | uintptr_t cmpxchg_emu_u8(volatile u8 *p, uintptr_t old, uintptr_t new); | ~~~~~~~~~~^~~ arch/riscv/include/asm/cmpxchg.h:329:69: warning: passing argument 3 of 'cmpxchg_emu_u8' makes integer from pointer without a cast [-Wint-conversion] 329 | __ret = cmpxchg_emu_u8((volatile u8 *)__ptr, __old, __new); \ | ^~~~~ | | | struct tty_struct * arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:71:13: note: in expansion of macro 'cmpxchg' 71 | if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { | ^~~~~~~ include/linux/cmpxchg-emu.h:13:67: note: expected 'uintptr_t' {aka 'long unsigned int'} but argument is of type 'struct tty_struct *' 13 | uintptr_t cmpxchg_emu_u8(volatile u8 *p, uintptr_t old, uintptr_t new); | ~~~~~~~~~~^~~ >> arch/riscv/include/asm/cmpxchg.h:329:23: warning: assignment to 'struct tty_struct *' from 'uintptr_t' {aka 'long unsigned int'} makes pointer from integer without a cast [-Wint-conversion] 329 | __ret = cmpxchg_emu_u8((volatile u8 *)__ptr, __old, __new); \ | ^ arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:71:13: note: in expansion of macro 'cmpxchg' 71 | if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { | ^~~~~~~ arch/riscv/include/asm/cmpxchg.h:333:64: warning: passing argument 2 of 'cmpxchg_emu_u16' makes integer from pointer without a cast [-Wint-conversion] 333 | __ret = cmpxchg_emu_u16((volatile u16 *)__ptr, __old, __new); \ | ^~~~~ | | | struct tty_struct * arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:71:13: note: in expansion of macro 'cmpxchg' 71 | if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { | ^~~~~~~ include/linux/cmpxchg-emu.h:14:54: note: expected 'uintptr_t' {aka 'long unsigned int'} but argument is of type 'struct tty_struct *' 14 | uintptr_t cmpxchg_emu_u16(volatile u16 *p, uintptr_t old, uintptr_t new); | ~~~~~~~~~~^~~ arch/riscv/include/asm/cmpxchg.h:333:71: warning: passing argument 3 of 'cmpxchg_emu_u16' makes integer from pointer without a cast [-Wint-conversion] 333 | __ret = cmpxchg_emu_u16((volatile u16 *)__ptr, __old, __new); \ | ^~~~~ | | | struct tty_struct * arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:71:13: note: in expansion of macro 'cmpxchg' 71 | if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { | ^~~~~~~ include/linux/cmpxchg-emu.h:14:69: note: expected 'uintptr_t' {aka 'long unsigned int'} but argument is of type 'struct tty_struct *' 14 | uintptr_t cmpxchg_emu_u16(volatile u16 *p, uintptr_t old, uintptr_t new); | ~~~~~~~~~~^~~ arch/riscv/include/asm/cmpxchg.h:333:23: warning: assignment to 'struct tty_struct *' from 'uintptr_t' {aka 'long unsigned int'} makes pointer from integer without a cast [-Wint-conversion] 333 | __ret = cmpxchg_emu_u16((volatile u16 *)__ptr, __old, __new); \ | ^ arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:71:13: note: in expansion of macro 'cmpxchg' 71 | if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { | ^~~~~~~ drivers/accessibility/speakup/selection.c: In function 'speakup_paste_selection': arch/riscv/include/asm/cmpxchg.h:329:62: warning: passing argument 2 of 'cmpxchg_emu_u8' makes integer from pointer without a cast [-Wint-conversion] 329 | __ret = cmpxchg_emu_u8((volatile u8 *)__ptr, __old, __new); \ | ^~~~~ | | | struct tty_struct * arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:124:13: note: in expansion of macro 'cmpxchg' 124 | if (cmpxchg(&speakup_paste_work.tty, NULL, tty)) { | ^~~~~~~ include/linux/cmpxchg-emu.h:13:52: note: expected 'uintptr_t' {aka 'long unsigned int'} but argument is of type 'struct tty_struct *' 13 | uintptr_t cmpxchg_emu_u8(volatile u8 *p, uintptr_t old, uintptr_t new); | ~~~~~~~~~~^~~ arch/riscv/include/asm/cmpxchg.h:329:69: warning: passing argument 3 of 'cmpxchg_emu_u8' makes integer from pointer without a cast [-Wint-conversion] 329 | __ret = cmpxchg_emu_u8((volatile u8 *)__ptr, __old, __new); \ | ^~~~~ | | | struct tty_struct * arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:124:13: note: in expansion of macro 'cmpxchg' 124 | if (cmpxchg(&speakup_paste_work.tty, NULL, tty)) { | ^~~~~~~ include/linux/cmpxchg-emu.h:13:67: note: expected 'uintptr_t' {aka 'long unsigned int'} but argument is of type 'struct tty_struct *' 13 | uintptr_t cmpxchg_emu_u8(volatile u8 *p, uintptr_t old, uintptr_t new); | ~~~~~~~~~~^~~ >> arch/riscv/include/asm/cmpxchg.h:329:23: warning: assignment to 'struct tty_struct *' from 'uintptr_t' {aka 'long unsigned int'} makes pointer from integer without a cast [-Wint-conversion] 329 | __ret = cmpxchg_emu_u8((volatile u8 *)__ptr, __old, __new); \ | ^ arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:124:13: note: in expansion of macro 'cmpxchg' 124 | if (cmpxchg(&speakup_paste_work.tty, NULL, tty)) { | ^~~~~~~ arch/riscv/include/asm/cmpxchg.h:333:64: warning: passing argument 2 of 'cmpxchg_emu_u16' makes integer from pointer without a cast [-Wint-conversion] 333 | __ret = cmpxchg_emu_u16((volatile u16 *)__ptr, __old, __new); \ | ^~~~~ | | | struct tty_struct * arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:124:13: note: in expansion of macro 'cmpxchg' 124 | if (cmpxchg(&speakup_paste_work.tty, NULL, tty)) { | ^~~~~~~ include/linux/cmpxchg-emu.h:14:54: note: expected 'uintptr_t' {aka 'long unsigned int'} but argument is of type 'struct tty_struct *' 14 | uintptr_t cmpxchg_emu_u16(volatile u16 *p, uintptr_t old, uintptr_t new); | ~~~~~~~~~~^~~ arch/riscv/include/asm/cmpxchg.h:333:71: warning: passing argument 3 of 'cmpxchg_emu_u16' makes integer from pointer without a cast [-Wint-conversion] 333 | __ret = cmpxchg_emu_u16((volatile u16 *)__ptr, __old, __new); \ | ^~~~~ | | | struct tty_struct * arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:124:13: note: in expansion of macro 'cmpxchg' 124 | if (cmpxchg(&speakup_paste_work.tty, NULL, tty)) { | ^~~~~~~ include/linux/cmpxchg-emu.h:14:69: note: expected 'uintptr_t' {aka 'long unsigned int'} but argument is of type 'struct tty_struct *' 14 | uintptr_t cmpxchg_emu_u16(volatile u16 *p, uintptr_t old, uintptr_t new); | ~~~~~~~~~~^~~ arch/riscv/include/asm/cmpxchg.h:333:23: warning: assignment to 'struct tty_struct *' from 'uintptr_t' {aka 'long unsigned int'} makes pointer from integer without a cast [-Wint-conversion] 333 | __ret = cmpxchg_emu_u16((volatile u16 *)__ptr, __old, __new); \ | ^ arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:124:13: note: in expansion of macro 'cmpxchg' 124 | if (cmpxchg(&speakup_paste_work.tty, NULL, tty)) { | ^~~~~~~ drivers/accessibility/speakup/selection.c: In function 'speakup_set_selection': arch/riscv/include/asm/cmpxchg.h:333:23: warning: this statement may fall through [-Wimplicit-fallthrough=] 333 | __ret = cmpxchg_emu_u16((volatile u16 *)__ptr, __old, __new); \ | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:71:13: note: in expansion of macro 'cmpxchg' 71 | if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { | ^~~~~~~ arch/riscv/include/asm/cmpxchg.h:334:9: note: here 334 | case 4: \ | ^~~~ arch/riscv/include/asm/cmpxchg.h:368:30: note: in expansion of macro '__cmpxchg' 368 | (__typeof__(*(ptr))) __cmpxchg((ptr), \ | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg' 55 | #define raw_cmpxchg arch_cmpxchg | ^~~~~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4788:9: note: in expansion of macro 'raw_cmpxchg' 4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~~~~ drivers/accessibility/speakup/selection.c:71:13: note: in expansion of macro 'cmpxchg' 71 | if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { | ^~~~~~~ vim +329 arch/riscv/include/asm/cmpxchg.h 319 320 #define __cmpxchg(ptr, old, new, size) \ 321 ({ \ 322 __typeof__(ptr) __ptr = (ptr); \ 323 __typeof__(*(ptr)) __old = (old); \ 324 __typeof__(*(ptr)) __new = (new); \ 325 __typeof__(*(ptr)) __ret; \ 326 register unsigned int __rc; \ 327 switch (size) { \ 328 case 1: \ > 329 __ret = cmpxchg_emu_u8((volatile u8 *)__ptr, __old, __new); \ 330 break; \ 331 case 2: \ 332 break; \ 333 __ret = cmpxchg_emu_u16((volatile u16 *)__ptr, __old, __new); \ 334 case 4: \ 335 __asm__ __volatile__ ( \ 336 "0: lr.w %0, %2\n" \ 337 " bne %0, %z3, 1f\n" \ 338 " sc.w.rl %1, %z4, %2\n" \ 339 " bnez %1, 0b\n" \ 340 RISCV_FULL_BARRIER \ 341 "1:\n" \ 342 : "=&r" (__ret), "=&r" (__rc), "+A" (*__ptr) \ 343 : "rJ" ((long)__old), "rJ" (__new) \ 344 : "memory"); \ 345 break; \ 346 case 8: \ 347 __asm__ __volatile__ ( \ 348 "0: lr.d %0, %2\n" \ 349 " bne %0, %z3, 1f\n" \ 350 " sc.d.rl %1, %z4, %2\n" \ 351 " bnez %1, 0b\n" \ 352 RISCV_FULL_BARRIER \ 353 "1:\n" \ 354 : "=&r" (__ret), "=&r" (__rc), "+A" (*__ptr) \ 355 : "rJ" (__old), "rJ" (__new) \ 356 : "memory"); \ 357 break; \ 358 default: \ 359 BUILD_BUG(); \ 360 } \ 361 __ret; \ 362 }) 363 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki