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 5AC9DC74A5B for ; Sun, 19 Mar 2023 01:16:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 654FD900003; Sat, 18 Mar 2023 21:16:05 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 606AA900002; Sat, 18 Mar 2023 21:16:05 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 51B94900003; Sat, 18 Mar 2023 21:16:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 42DE0900002 for ; Sat, 18 Mar 2023 21:16:05 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 024A4C0CD3 for ; Sun, 19 Mar 2023 01:16:04 +0000 (UTC) X-FDA: 80583881490.26.D52BAE7 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by imf30.hostedemail.com (Postfix) with ESMTP id C242D80019 for ; Sun, 19 Mar 2023 01:16:01 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=QsWTfzk5; spf=pass (imf30.hostedemail.com: domain of lkp@intel.com designates 134.134.136.24 as permitted sender) smtp.mailfrom=lkp@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1679188562; a=rsa-sha256; cv=none; b=8aqn9c4czzyysMi17nhqNzhhDykfyvBkC69nAn+zFL6fVh6D90dU8zea3w/0Z4/5jic+Iq S++5u3toiYAp8ODRgH63wAUOj8U03VrjZLA+4E2g1gPJaGYaugWK0gcHdJArw3q2LC9giK /Egk2vytYt+xi6Wi/tUGYMJF4h4u39c= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=QsWTfzk5; spf=pass (imf30.hostedemail.com: domain of lkp@intel.com designates 134.134.136.24 as permitted sender) smtp.mailfrom=lkp@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1679188562; 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=XqJWJFjdY2PAHA/OhfArSMq1XTs6GA/ees/ZhW/NGc8=; b=hVLqw6yPtMP6Xoex7lI7efJcwauVmzKHsrCXLUulBIW9Kb29ezlG+90RRuHMMrra7svqZ9 6leyStXqITmtkst2pvz4s2viVJJfoBW1u46iqqWqVOXdKl+tA9xo1hHCjNseFlIOGbQw9R P9BMndEowdE5EV426V9EkLsZWpxo5vQ= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1679188561; x=1710724561; h=date:from:to:cc:subject:message-id:mime-version; bh=IbvM9Er9tkWwchvy5FbS4aQrulJQtQdhzo+eGOwWUGs=; b=QsWTfzk5qfYuaQ3Mz9BTs81npmn0OJ0AWw3rgfHdYjP37ysNsgCKS7X0 gIaZOvFCMIGlhxdS8pPg7RJPhQEJEBzNsAmkBHfRlhrkZEzSnPRlsF2xr rLy4CkxERzblDmqVOmqC8ni6fyBwIFBQnkzQ5oSHrEMgW8EuV0oWWb1bI EXO4A35Dus2tsdFYRo8y7/GllD41nj7bUGaufOwztJDLTicg9OYa8S+bR fw30+qrC04dN5jC4Kv2KZxj867UIXiUCh8XKVHwPZlmMiPsnynHA/WPHL c/HPR7qIj284ywv832NEjSYhw/XDhlNk9fmt90MrzQXhRlIqwN9b4xAI5 A==; X-IronPort-AV: E=McAfee;i="6600,9927,10653"; a="340009083" X-IronPort-AV: E=Sophos;i="5.98,272,1673942400"; d="scan'208";a="340009083" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Mar 2023 18:15:59 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10653"; a="824068723" X-IronPort-AV: E=Sophos;i="5.98,272,1673942400"; d="scan'208";a="824068723" Received: from lkp-server01.sh.intel.com (HELO b613635ddfff) ([10.239.97.150]) by fmsmga001.fm.intel.com with ESMTP; 18 Mar 2023 18:15:58 -0700 Received: from kbuild by b613635ddfff with local (Exim 4.96) (envelope-from ) id 1pdheP-000AK6-0f; Sun, 19 Mar 2023 01:15:57 +0000 Date: Sun, 19 Mar 2023 09:15:33 +0800 From: kernel test robot To: Alistair Popple Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org, Andrew Morton , Linux Memory Management List , Lyude Paul Subject: drivers/gpu/drm/nouveau/nouveau_dmem.c:205:13: sparse: sparse: incorrect type in assignment (different base types) Message-ID: <202303190929.sOBSJIb5-lkp@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Rspam-User: X-Rspamd-Queue-Id: C242D80019 X-Rspamd-Server: rspam01 X-Stat-Signature: hezk7kgrixpg1omb4gp8j1ibtwzxz5cy X-HE-Tag: 1679188561-371539 X-HE-Meta: U2FsdGVkX18ElHw7ylwqbqpuQWCglEAYw5mw2gwbdPDD4qZ/8kBwRlzQW9ZyPHxwbaJnpEmS2Y7mQ1CzCcaW7zC6jiqvkEESii8dXU/10Xl0R6CNDVwePXjc/tKr+8ifnNY+u41Wi9Aos6SXWKdu8bdo8zaOXEJsoieAwqYGCHIbFTxRlna77r/HAufkUGcXwHGk9ih8+YYofEgxZ3AH8UhBYpWnmUbSVLgA05k5R8IGf1+hPKbOis4vOcHgjfpBkE34bBNYG74MRPIdF1NPZIEqafXdwTr2dgOqLf5j7TMB/4TtJRq8QDRw09K06DsAvxb+damNJtAm5IsX2YzUxCTj8MaXHBIijpV78ueHMbLXatD3XeomIwB2rX35oAOfQzhyFis6+RZQ7InUvLccAq8s1/mVbS8gULrllPkAq/jdCM46wisrKdzf2iLwqZ//qHalh3RVAD1BICsV75e1u7o2DOgl0d3g5wuEvfcKiZa2BkcifooR6NS1tG0H/brJg9PvphTH1burSwKlNSrvyuEtnyPYqgwhG5ELiwMeyU6neUFGsdc1MCZupWlUvkkZOl2Xh8iF5i2AnsqwX+lVD9EuxrNNGl/M7epFcWAs/+03qYVdXlxRr9u7vNbIQm7fFnjF65BdqnqE/tN+BEvxFom1UyJHG24SfWtRRa9RweiXmNig3FXfUSp1iIVhpI4MD0Av1lNPk16SFvfv7N6kpmFJp1Y6PLYXxuEBozx6cEOkMUn5p/TbvbNusrD/YV/U8gNbqVan7lLeu30+Dpw0lckrkq2Fzd0bIiPYTXa6HcgFtaRXbiwnyYaxIStJ0Mr2cgsDAaip1clRVQ9djU589nRG66hGFzCpiMq3hLXQZwcVjcO8S2DW7dW3yZxbaN0CbL3/qX+wWMVnUMy6UHc7d42d9QLMd6TRhaET5Sy7PBUl6semFemH76aPz5chmTpc/3I4rshXn12iFDLEx4p WAc5svKg W6VaYndZXCYv0XIYEgSLmkfRvU1cg0/5Uwy7RvdkgK1w+wtXLgebQFi9sJiZqLTsdX1wJBYDGtvJ0ue7TNp9zh6ZolZPhKtKtMxG4lMLMPLyc7zvmjwh1b6yPT4lqcLO8iCSGXroREhijR3E2G2xT3abBUqAMHt6RW52vtUSoC7Evzjo+J8e9cKPS8R9bWaR6/yLEB8whBlT0ds7AOQeKhdr1PKJ44HLtZmqH4jNS9HHytX9cVIt7fyrD0KNfHs2FJNdRam9qnXOf9IZZVX47GstcBDI8n9DLDUqpi667PIJC6YWwDO8/TrJ1UTNzBOH5qo5Y82F0mkaP87HwtIeSYRgyTdB7BkuZ3bYRA221rNYNUFjyNXcubBRjRT2/IdP31OkROKGa0C2PxA5+5YHzgoWGX6nyC2GgUE5g4gw1a4Ldp8H6KIehxKM8giWKJm72B/8OlR11Cjs5XVlOqfIL1QuxXHBzHePMy6mWgGz8W5MuiME= 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: tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: a3671bd86a9770e34969522d29bb30a1b66fd88a commit: d9b719394a1147614351961ac454589111c76e76 nouveau/dmem: refactor nouveau_dmem_fault_copy_one() date: 5 months ago config: arm64-randconfig-s052-20230319 (https://download.01.org/0day-ci/archive/20230319/202303190929.sOBSJIb5-lkp@intel.com/config) compiler: aarch64-linux-gcc (GCC) 12.1.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.4-39-gce1a6720-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d9b719394a1147614351961ac454589111c76e76 git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git git fetch --no-tags linus master git checkout d9b719394a1147614351961ac454589111c76e76 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm64 olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/bluetooth/ drivers/gpu/drm/ drivers/remoteproc/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot | Link: https://lore.kernel.org/oe-kbuild-all/202303190929.sOBSJIb5-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) >> drivers/gpu/drm/nouveau/nouveau_dmem.c:205:13: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted vm_fault_t [usertype] ret @@ got int @@ drivers/gpu/drm/nouveau/nouveau_dmem.c:205:13: sparse: expected restricted vm_fault_t [usertype] ret drivers/gpu/drm/nouveau/nouveau_dmem.c:205:13: sparse: got int drivers/gpu/drm/nouveau/nouveau_dmem.c:409:25: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:409:25: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:413:25: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:413:25: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:426:25: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:426:25: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:430:25: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:430:25: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:440:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:454:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:454:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:481:17: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:481:17: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:485:17: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:485:17: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:494:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:494:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:494:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:494:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:503:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:503:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:503:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:508:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:508:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:510:9: sparse: sparse: cast removes address space '__iomem' of expression drivers/gpu/drm/nouveau/nouveau_dmem.c:510:9: sparse: sparse: cast removes address space '__iomem' of expression vim +205 drivers/gpu/drm/nouveau/nouveau_dmem.c 161 162 static vm_fault_t nouveau_dmem_migrate_to_ram(struct vm_fault *vmf) 163 { 164 struct nouveau_drm *drm = page_to_drm(vmf->page); 165 struct nouveau_dmem *dmem = drm->dmem; 166 struct nouveau_fence *fence; 167 struct nouveau_svmm *svmm; 168 struct page *spage, *dpage; 169 unsigned long src = 0, dst = 0; 170 dma_addr_t dma_addr = 0; 171 vm_fault_t ret = 0; 172 struct migrate_vma args = { 173 .vma = vmf->vma, 174 .start = vmf->address, 175 .end = vmf->address + PAGE_SIZE, 176 .src = &src, 177 .dst = &dst, 178 .pgmap_owner = drm->dev, 179 .flags = MIGRATE_VMA_SELECT_DEVICE_PRIVATE, 180 }; 181 182 /* 183 * FIXME what we really want is to find some heuristic to migrate more 184 * than just one page on CPU fault. When such fault happens it is very 185 * likely that more surrounding page will CPU fault too. 186 */ 187 if (migrate_vma_setup(&args) < 0) 188 return VM_FAULT_SIGBUS; 189 if (!args.cpages) 190 return 0; 191 192 spage = migrate_pfn_to_page(src); 193 if (!spage || !(src & MIGRATE_PFN_MIGRATE)) 194 goto done; 195 196 dpage = alloc_page_vma(GFP_HIGHUSER, vmf->vma, vmf->address); 197 if (!dpage) 198 goto done; 199 200 dst = migrate_pfn(page_to_pfn(dpage)); 201 202 svmm = spage->zone_device_data; 203 mutex_lock(&svmm->mutex); 204 nouveau_svmm_invalidate(svmm, args.start, args.end); > 205 ret = nouveau_dmem_copy_one(drm, spage, dpage, &dma_addr); 206 mutex_unlock(&svmm->mutex); 207 if (ret) { 208 ret = VM_FAULT_SIGBUS; 209 goto done; 210 } 211 212 nouveau_fence_new(dmem->migrate.chan, false, &fence); 213 migrate_vma_pages(&args); 214 nouveau_dmem_fence_done(&fence); 215 dma_unmap_page(drm->dev->dev, dma_addr, PAGE_SIZE, DMA_BIDIRECTIONAL); 216 done: 217 migrate_vma_finalize(&args); 218 return ret; 219 } 220 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests