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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 22DD5C4167B for ; Tue, 5 Dec 2023 19:01:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345427AbjLETBO (ORCPT ); Tue, 5 Dec 2023 14:01:14 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56904 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230271AbjLETBM (ORCPT ); Tue, 5 Dec 2023 14:01:12 -0500 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E45E9B0 for ; Tue, 5 Dec 2023 11:01:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1701802877; x=1733338877; h=date:from:to:cc:subject:message-id:mime-version; bh=qg/m5zKfy263zkcon2J1WmqPRthLuU+PWS/Ha4LNFR0=; b=Eo+h4phyPiqaLJ2Wrf9sBDFtUAseskyRws3bfnCK8Oc9IRrpcmEnoFAv GuVglw9S7rsYVuatnc8cnrmaBVf7qVrA6hzM3bRxxDHkhhaNic78Ilx1+ lQilb8YDGpiaUFdGZfX6ZT1Xl4V4M5fhJbmNaPbHfjrffCxT+RgdNfBjn za2JFj33geUqKB0lkawE3A1xuPw5Xb61kOcqUWAI/O17FvV7+tFtvs17v 3DnxUTblnRvPFQzYYS9Z6y8PoH5nYQaDAobg/o5EsckSAFPBHAOj/UkQT whkTHoA13NO6mmWDBqyXMRmGlMsDIuvjpQyUSXHhkPIUePfMpzd/KhnFm g==; X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="15491373" X-IronPort-AV: E=Sophos;i="6.04,253,1695711600"; d="scan'208";a="15491373" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Dec 2023 11:01:16 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="914900926" X-IronPort-AV: E=Sophos;i="6.04,253,1695711600"; d="scan'208";a="914900926" Received: from lkp-server02.sh.intel.com (HELO b07ab15da5fe) ([10.239.97.151]) by fmsmga001.fm.intel.com with ESMTP; 05 Dec 2023 11:01:14 -0800 Received: from kbuild by b07ab15da5fe with local (Exim 4.96) (envelope-from ) id 1rAafQ-0009aQ-1n; Tue, 05 Dec 2023 19:01:12 +0000 Date: Wed, 6 Dec 2023 03:00:31 +0800 From: kernel test robot To: Pavel Begunkov Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org, Jens Axboe Subject: io_uring/poll.c:819:40: sparse: sparse: incorrect type in argument 2 (different base types) Message-ID: <202312060233.WLwrTXaU-lkp@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: bee0e7762ad2c6025b9f5245c040fcc36ef2bde8 commit: 063a007996bf725ba4c7d8741701670be9858300 io_uring: change arm poll return values date: 1 year, 4 months ago config: x86_64-alldefconfig (https://download.01.org/0day-ci/archive/20231206/202312060233.WLwrTXaU-lkp@intel.com/config) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231206/202312060233.WLwrTXaU-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/202312060233.WLwrTXaU-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) io_uring/poll.c: note: in included file (through io_uring/io_uring.h): io_uring/slist.h:138:29: sparse: sparse: no newline at end of file io_uring/poll.c:222:38: sparse: sparse: incorrect type in assignment (different base types) @@ expected signed int [usertype] res @@ got restricted __poll_t @@ io_uring/poll.c:222:38: sparse: expected signed int [usertype] res io_uring/poll.c:222:38: sparse: got restricted __poll_t io_uring/poll.c:233:56: sparse: sparse: restricted __poll_t degrades to integer io_uring/poll.c:232:66: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected restricted __poll_t [usertype] val @@ got unsigned int @@ io_uring/poll.c:232:66: sparse: expected restricted __poll_t [usertype] val io_uring/poll.c:232:66: sparse: got unsigned int io_uring/poll.c:232:52: sparse: sparse: incorrect type in initializer (different base types) @@ expected restricted __poll_t [usertype] mask @@ got unsigned short @@ io_uring/poll.c:232:52: sparse: expected restricted __poll_t [usertype] mask io_uring/poll.c:232:52: sparse: got unsigned short io_uring/poll.c:236:46: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected signed int [usertype] res @@ got restricted __poll_t [usertype] mask @@ io_uring/poll.c:236:46: sparse: expected signed int [usertype] res io_uring/poll.c:236:46: sparse: got restricted __poll_t [usertype] mask io_uring/poll.c:264:63: sparse: sparse: restricted __poll_t degrades to integer io_uring/poll.c:264:57: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected restricted __poll_t [usertype] val @@ got unsigned int @@ io_uring/poll.c:264:57: sparse: expected restricted __poll_t [usertype] val io_uring/poll.c:264:57: sparse: got unsigned int io_uring/poll.c:372:40: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int mask @@ got restricted __poll_t [usertype] mask @@ io_uring/poll.c:372:40: sparse: expected int mask io_uring/poll.c:372:40: sparse: got restricted __poll_t [usertype] mask io_uring/poll.c:491:40: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int mask @@ got restricted __poll_t [assigned] [usertype] mask @@ io_uring/poll.c:491:40: sparse: expected int mask io_uring/poll.c:491:40: sparse: got restricted __poll_t [assigned] [usertype] mask io_uring/poll.c:543:45: sparse: sparse: restricted __poll_t degrades to integer io_uring/poll.c:543:43: sparse: sparse: incorrect type in initializer (different base types) @@ expected restricted __poll_t [usertype] mask @@ got unsigned int @@ io_uring/poll.c:543:43: sparse: expected restricted __poll_t [usertype] mask io_uring/poll.c:543:43: sparse: got unsigned int io_uring/poll.c:588:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int mask @@ got restricted __poll_t [assigned] [usertype] mask @@ io_uring/poll.c:588:38: sparse: expected int mask io_uring/poll.c:588:38: sparse: got restricted __poll_t [assigned] [usertype] mask io_uring/poll.c:588:55: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected int events @@ got restricted __poll_t [usertype] events @@ io_uring/poll.c:588:55: sparse: expected int events io_uring/poll.c:588:55: sparse: got restricted __poll_t [usertype] events io_uring/poll.c:745:24: sparse: sparse: invalid assignment: |= io_uring/poll.c:745:24: sparse: left side has type unsigned int io_uring/poll.c:745:24: sparse: right side has type restricted __poll_t io_uring/poll.c:747:24: sparse: sparse: invalid assignment: |= io_uring/poll.c:747:24: sparse: left side has type unsigned int io_uring/poll.c:747:24: sparse: right side has type restricted __poll_t io_uring/poll.c:749:55: sparse: sparse: restricted __poll_t degrades to integer io_uring/poll.c:748:29: sparse: sparse: restricted __poll_t degrades to integer io_uring/poll.c:748:38: sparse: sparse: incorrect type in return expression (different base types) @@ expected restricted __poll_t @@ got unsigned int @@ io_uring/poll.c:748:38: sparse: expected restricted __poll_t io_uring/poll.c:748:38: sparse: got unsigned int >> io_uring/poll.c:819:40: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected signed int [usertype] res @@ got restricted __poll_t [addressable] [assigned] [usertype] result_mask @@ io_uring/poll.c:819:40: sparse: expected signed int [usertype] res io_uring/poll.c:819:40: sparse: got restricted __poll_t [addressable] [assigned] [usertype] result_mask io_uring/poll.c:873:38: sparse: sparse: invalid assignment: &= io_uring/poll.c:873:38: sparse: left side has type restricted __poll_t io_uring/poll.c:873:38: sparse: right side has type int io_uring/poll.c:874:52: sparse: sparse: restricted __poll_t degrades to integer io_uring/poll.c:874:38: sparse: sparse: invalid assignment: |= io_uring/poll.c:874:38: sparse: left side has type restricted __poll_t io_uring/poll.c:874:38: sparse: right side has type unsigned int io_uring/poll.c:632:24: sparse: sparse: context imbalance in 'io_poll_find' - wrong count at exit io_uring/poll.c:661:24: sparse: sparse: context imbalance in 'io_poll_file_find' - wrong count at exit io_uring/poll.c:716:28: sparse: sparse: context imbalance in '__io_poll_cancel' - unexpected unlock io_uring/poll.c:843:28: sparse: sparse: context imbalance in 'io_poll_remove' - unexpected unlock vim +819 io_uring/poll.c 798 799 int io_poll_add(struct io_kiocb *req, unsigned int issue_flags) 800 { 801 struct io_poll *poll = io_kiocb_to_cmd(req); 802 struct io_poll_table ipt; 803 int ret; 804 805 ipt.pt._qproc = io_poll_queue_proc; 806 807 /* 808 * If sqpoll or single issuer, there is no contention for ->uring_lock 809 * and we'll end up holding it in tw handlers anyway. 810 */ 811 if (!(issue_flags & IO_URING_F_UNLOCKED) && 812 (req->ctx->flags & (IORING_SETUP_SQPOLL | IORING_SETUP_SINGLE_ISSUER))) 813 req->flags |= REQ_F_HASH_LOCKED; 814 else 815 req->flags &= ~REQ_F_HASH_LOCKED; 816 817 ret = __io_arm_poll_handler(req, poll, &ipt, poll->events); 818 if (ret) { > 819 io_req_set_res(req, ipt.result_mask, 0); 820 return IOU_OK; 821 } 822 if (ipt.error) { 823 req_set_fail(req); 824 return ipt.error; 825 } 826 827 return IOU_ISSUE_SKIP_COMPLETE; 828 } 829 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki