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 31C52C636CC for ; Sat, 11 Feb 2023 13:25:18 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4E9866B0072; Sat, 11 Feb 2023 08:25:17 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 49A306B0073; Sat, 11 Feb 2023 08:25:17 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3628E6B0074; Sat, 11 Feb 2023 08:25:17 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 26AA66B0072 for ; Sat, 11 Feb 2023 08:25:17 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id E753D40148 for ; Sat, 11 Feb 2023 13:25:16 +0000 (UTC) X-FDA: 80455082232.15.FE8EF31 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by imf15.hostedemail.com (Postfix) with ESMTP id 992B5A0010 for ; Sat, 11 Feb 2023 13:25:13 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=nMvvsGog; spf=pass (imf15.hostedemail.com: domain of lkp@intel.com designates 134.134.136.126 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=1676121915; 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=i1JF0Yw7qLi+1wmKublz25fMOEWk13dSWduoUL7i+gk=; b=NT+jSvOLs/ifGKJTNtWFrnA/lL0wO0DWKmm+slQYUOd6YeZna4b0DHPvT9NQXbSulpBpU3 gCSyUkWBX16nFSLAW7OkzUIyFjBatyuKC7+WR7aFQKUUpUAd7nDXPbQJPebgDUYAyqLmxj nAY1VpNac7lg/PoIi9CvlC5+bf0Z0jI= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=nMvvsGog; spf=pass (imf15.hostedemail.com: domain of lkp@intel.com designates 134.134.136.126 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=1676121915; a=rsa-sha256; cv=none; b=Tl7IWO99QTFwZftL9TQLTc+V5osbGWCKk5zKjMM0ikPOZYqad0Kis7IJFTp96jpHBv+dyN h1zaPhBEIu1vCY00O0nTg0wNoBwyHh34ghEW4vIjzWKrpKjtXRSvQC5qSGbKvqybuCrejn 8mzNfsCkWBbfKdNSYKjm/dt7d8VBTxU= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676121913; x=1707657913; h=date:from:to:cc:subject:message-id:mime-version; bh=irui/RIM11uMQ7IowkeM+jqElfopjCn8gybGI9k0tRk=; b=nMvvsGogWbcjmrkiKb1qslGGoF2qoFFSzzJq4Sdqqib2W4tfv+yKfMuE 3dPiUl0KjKZR+eWz7yk0AmqgS674gH0EfiAurqJcsSnnj8zo6wpVc69F+ TxaoqKK+5uhR4jQHdjddOBU0WGDrrD2WMxOSmD0nWpgM1/CxOSfuyZmPC 07dKkS5+EAnmw5gv5PRg+RGsWS60Xw/Wl7Qpa3Oa2/QlLfKt7cBMZqxJE vpdkHv0lgE6jypOdGqvHV17s24Zw8ljn+BLRUV1pRPgoCsk4ErRbWWuvY 2c8gJIUJPhNx9BWNws0lVXHw0EhKbMXFd21NDuyI/pQJSQLSBqq11gYS3 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10617"; a="314250654" X-IronPort-AV: E=Sophos;i="5.97,289,1669104000"; d="scan'208";a="314250654" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Feb 2023 05:25:11 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10617"; a="777261174" X-IronPort-AV: E=Sophos;i="5.97,289,1669104000"; d="scan'208";a="777261174" Received: from lkp-server01.sh.intel.com (HELO 4455601a8d94) ([10.239.97.150]) by fmsmga002.fm.intel.com with ESMTP; 11 Feb 2023 05:25:10 -0800 Received: from kbuild by 4455601a8d94 with local (Exim 4.96) (envelope-from ) id 1pQpsL-0006X7-2B; Sat, 11 Feb 2023 13:25:09 +0000 Date: Sat, 11 Feb 2023 21:24:53 +0800 From: kernel test robot To: Christian =?iso-8859-1?Q?K=F6nig?= Cc: oe-kbuild-all@lists.linux.dev, Linux Memory Management List , Matthew Auld Subject: [linux-next:master 6475/12152] drivers/gpu/drm/i915/gem/i915_gem_ttm.c:1066:21: sparse: sparse: incorrect type in assignment (different base types) Message-ID: <202302112104.g75cGHZd-lkp@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Rspamd-Queue-Id: 992B5A0010 X-Stat-Signature: p9s7eb1dcxxgyndctyiso3txpw3uc3b6 X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1676121913-478051 X-HE-Meta: U2FsdGVkX18Z9B9mgpD7Pk6I7rSohoJscNp/ydNGjdHEkXLPn4poBWOHI1mFnxS/m65chnuOFIWNrx4xjadl329JtUdO7j/IAOE5EhMjO4bLfdgXR+A5Q+EknMRx5MNt+nBNQ5vwqO+1PNfxGlc5vMd8CWJZbqeUqW7j0bUwflRT6xJDeZUsuCfX49GwiyP1Hg1dRAj2/QaYXndvTvnmH0U1EtP/uNTM1bEgEoCFpOxGjnmS2ShQuifABbYpWh72VjhkMbRc698kkCKElUDr/qFQTyz1Pr1hgRq8SALw+4ryD8ktmbJhlFp0gP82vs5j28S29g24gX+kR2xlM7oYYVc8LHSCgg3uU16mJXnnYlm5Kl0O3TKnjAJABoCOLbfzX9A4OKAaLDEzpzmU8KhwmztPFvBoCszGd0wnTByyWWUcfmNctvhdfFDX5CEZtndG7SXQAn1TZIGS8ZGkz3tGJKah3TTj6aojBX0oZJjBU11kfTl/rYxwiXtXo/cNKlUxL2sVKIHVfmgDaRXGyIsi6nTzyivCkRFI5M//9iRv1mLD3WYWj5vKTDVeU4OLGWMEmoWoEQ8yiFcS3vTR2xYux7ic/41F/IYe2uN4rDN29q0pS0Ypj/cO/t+G6+fsBKRCzfvorx01p2dp7amspvu/0RzEvqrR8X/t3Qclbk+9sUddgJK27dKetgPJZ7OUmcDyEMulz2r83i+Lmrw7QYYr7yp0b24EdwZauyk4QszFppmf49mGDTJqgsqu6DkMX5rS1nVsqmk4ld3Q7nqIZCt5WfqUqCDbIcxirfm4G256R8ALkQ/NRJRaVgPzZo/+kGfkb2JdnAZ8BOqvnW2Dg4odY4ZvzSTC6kisPEKb7qskNRFF9NSxmEgDwLpakdBN01JuK3H+A3X61I4IsDCpOyxlR3KOtOGfJuzG3k3qYJ3cCsv6f2SCSwH7/ogATzHA+bVnnO6LRqdCMLfb1w40WnO 1LDTyGle ZRsfPOaMjaQBU2r5dcEEJIk6rVSBmLJ+1z2u2N47bAzrV4ThqFSpyGk6psPl6jOQtOYHPCPP9M9IZxJr6GMuMS6pZoaXHo9YGuhFj67hb+JNWYXB6xHOcmlFkDBf6Z8qx1vZ/lXCFs/FYXuEgapDB/UKxTu9wSrR/X2XnnU42eEz2SoJ2zOF/Xq3JZMiaBOKZl2PgyvfIMwgCqlQ1sBakgtOpmPEE54yI1u8cqDeaIev6kV0iWfBPAl29Ptc2E49FwJfX906tcw4uYWNH5R9I7bTEWNbYsW8KbGCpHrg9uF2VxXBKta+MfYPL5zNiFdllZVbnxZM55rMN2qvLkDm+dfcacvS4H+KIHJDXRRZwqb2bATFugQCmwZcvDQvWFIVJlRfEMXheMBkrTCp3pASMm4s/a4U950IJgI2Ts4BU0qQnGuwoyyQ9VLGQmZVUyk8AD2VM 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/next/linux-next.git master head: 6ba8a227fd19d19779005fb66ad7562608e1df83 commit: 516198d317d81f33839ca850e83f6717b0d80e80 [6475/12152] drm/i915: audit bo->resource usage v3 config: i386-randconfig-s041-20230123 (https://download.01.org/0day-ci/archive/20230211/202302112104.g75cGHZd-lkp@intel.com/config) compiler: gcc-11 (Debian 11.3.0-8) 11.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.4-39-gce1a6720-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=516198d317d81f33839ca850e83f6717b0d80e80 git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout 516198d317d81f33839ca850e83f6717b0d80e80 # save the config file mkdir build_dir && cp config build_dir/.config make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=i386 olddefconfig make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/i915/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot | Link: https://lore.kernel.org/oe-kbuild-all/202302112104.g75cGHZd-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) >> drivers/gpu/drm/i915/gem/i915_gem_ttm.c:1066:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted vm_fault_t [assigned] [usertype] ret @@ got int @@ drivers/gpu/drm/i915/gem/i915_gem_ttm.c:1066:21: sparse: expected restricted vm_fault_t [assigned] [usertype] ret drivers/gpu/drm/i915/gem/i915_gem_ttm.c:1066:21: sparse: got int vim +1066 drivers/gpu/drm/i915/gem/i915_gem_ttm.c 1027 1028 static vm_fault_t vm_fault_ttm(struct vm_fault *vmf) 1029 { 1030 struct vm_area_struct *area = vmf->vma; 1031 struct ttm_buffer_object *bo = area->vm_private_data; 1032 struct drm_device *dev = bo->base.dev; 1033 struct drm_i915_gem_object *obj = i915_ttm_to_gem(bo); 1034 intel_wakeref_t wakeref = 0; 1035 vm_fault_t ret; 1036 int idx; 1037 1038 /* Sanity check that we allow writing into this object */ 1039 if (unlikely(i915_gem_object_is_readonly(obj) && 1040 area->vm_flags & VM_WRITE)) 1041 return VM_FAULT_SIGBUS; 1042 1043 ret = ttm_bo_vm_reserve(bo, vmf); 1044 if (ret) 1045 return ret; 1046 1047 if (obj->mm.madv != I915_MADV_WILLNEED) { 1048 dma_resv_unlock(bo->base.resv); 1049 return VM_FAULT_SIGBUS; 1050 } 1051 1052 /* 1053 * This must be swapped out with shmem ttm_tt (pipeline-gutting). 1054 * Calling ttm_bo_validate() here with TTM_PL_SYSTEM should only go as 1055 * far as far doing a ttm_bo_move_null(), which should skip all the 1056 * other junk. 1057 */ 1058 if (!bo->resource) { 1059 struct ttm_operation_ctx ctx = { 1060 .interruptible = true, 1061 .no_wait_gpu = true, /* should be idle already */ 1062 }; 1063 1064 GEM_BUG_ON(!bo->ttm || !(bo->ttm->page_flags & TTM_TT_FLAG_SWAPPED)); 1065 > 1066 ret = ttm_bo_validate(bo, i915_ttm_sys_placement(), &ctx); 1067 if (ret) { 1068 dma_resv_unlock(bo->base.resv); 1069 return VM_FAULT_SIGBUS; 1070 } 1071 } else if (!i915_ttm_resource_mappable(bo->resource)) { 1072 int err = -ENODEV; 1073 int i; 1074 1075 for (i = 0; i < obj->mm.n_placements; i++) { 1076 struct intel_memory_region *mr = obj->mm.placements[i]; 1077 unsigned int flags; 1078 1079 if (!mr->io_size && mr->type != INTEL_MEMORY_SYSTEM) 1080 continue; 1081 1082 flags = obj->flags; 1083 flags &= ~I915_BO_ALLOC_GPU_ONLY; 1084 err = __i915_ttm_migrate(obj, mr, flags); 1085 if (!err) 1086 break; 1087 } 1088 1089 if (err) { 1090 drm_dbg(dev, "Unable to make resource CPU accessible(err = %pe)\n", 1091 ERR_PTR(err)); 1092 dma_resv_unlock(bo->base.resv); 1093 ret = VM_FAULT_SIGBUS; 1094 goto out_rpm; 1095 } 1096 } 1097 1098 if (i915_ttm_cpu_maps_iomem(bo->resource)) 1099 wakeref = intel_runtime_pm_get(&to_i915(obj->base.dev)->runtime_pm); 1100 1101 if (drm_dev_enter(dev, &idx)) { 1102 ret = ttm_bo_vm_fault_reserved(vmf, vmf->vma->vm_page_prot, 1103 TTM_BO_VM_NUM_PREFAULT); 1104 drm_dev_exit(idx); 1105 } else { 1106 ret = ttm_bo_vm_dummy_page(vmf, vmf->vma->vm_page_prot); 1107 } 1108 1109 if (ret == VM_FAULT_RETRY && !(vmf->flags & FAULT_FLAG_RETRY_NOWAIT)) 1110 goto out_rpm; 1111 1112 /* 1113 * ttm_bo_vm_reserve() already has dma_resv_lock. 1114 * userfault_count is protected by dma_resv lock and rpm wakeref. 1115 */ 1116 if (ret == VM_FAULT_NOPAGE && wakeref && !obj->userfault_count) { 1117 obj->userfault_count = 1; 1118 spin_lock(&to_i915(obj->base.dev)->runtime_pm.lmem_userfault_lock); 1119 list_add(&obj->userfault_link, &to_i915(obj->base.dev)->runtime_pm.lmem_userfault_list); 1120 spin_unlock(&to_i915(obj->base.dev)->runtime_pm.lmem_userfault_lock); 1121 1122 GEM_WARN_ON(!i915_ttm_cpu_maps_iomem(bo->resource)); 1123 } 1124 1125 if (wakeref & CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND) 1126 intel_wakeref_auto(&to_i915(obj->base.dev)->runtime_pm.userfault_wakeref, 1127 msecs_to_jiffies_timeout(CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND)); 1128 1129 i915_ttm_adjust_lru(obj); 1130 1131 dma_resv_unlock(bo->base.resv); 1132 1133 out_rpm: 1134 if (wakeref) 1135 intel_runtime_pm_put(&to_i915(obj->base.dev)->runtime_pm, wakeref); 1136 1137 return ret; 1138 } 1139 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests