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 64594C27C76 for ; Sat, 28 Jan 2023 12:14:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D10696B0072; Sat, 28 Jan 2023 07:14:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id CC07A6B0073; Sat, 28 Jan 2023 07:14:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B61B86B0074; Sat, 28 Jan 2023 07:14:35 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id A423A6B0072 for ; Sat, 28 Jan 2023 07:14:35 -0500 (EST) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 5EB8B802AF for ; Sat, 28 Jan 2023 12:14:35 +0000 (UTC) X-FDA: 80404100910.18.7BCA24E Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by imf13.hostedemail.com (Postfix) with ESMTP id 1FF3120002 for ; Sat, 28 Jan 2023 12:14:31 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=Z11+fxSu; spf=pass (imf13.hostedemail.com: domain of lkp@intel.com designates 192.55.52.93 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=1674908073; a=rsa-sha256; cv=none; b=0778CAuWH/Nk5cG4tmt94DNbDrrU5cwNT5F6CYU+oMqKsqBvV1sa0n5pjIbdhKQ8pqV9e5 5FWoAJH2ftkiOqZ5R8ACS3UpwQNeXWq8rtp613itrEYOt9IFu1WUUBPzoSm6hCguxZ0H5J JnJUXbpRFcSY4asQaBJApf6J4b+sO5E= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=Z11+fxSu; spf=pass (imf13.hostedemail.com: domain of lkp@intel.com designates 192.55.52.93 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=1674908073; 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=/cVmz3eXCzJrJ6oVc56n/MBjQLJbBAiTWqFtqmzZmpI=; b=sVTplpxy4rVdCdzdecRcze0XVEmo1hGmubUWr3B7izYCinaxaLAI4MLbM1NYs6sPR1JQMn mdkFhGEldt1LpSP+juhfMYKxVMyXMrRviNG2ajwkRlmRkh/7ri+oJptkY2RVxiBX6ozgys Q+rAHvKJVdojA8jUIVI/ySAkUknamhM= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1674908072; x=1706444072; h=date:from:to:cc:subject:message-id:mime-version; bh=815ACZ/FRVC1G7GYVEHNBISDdkgnRxoPRkKaOtY2Uz8=; b=Z11+fxSuNjgkH8a3hoWSt+R8p90PvhQVzA+yw3bP/HOI1p+EOCcueLyJ yWiDG/ynJNviPlgA+NYxmGgbZPF5ey0xZHY2WvWyLdENWsqVPgpyESdEJ bJAmF3gTCAGGJkamtR3npV05QmWGyZkqF9oE4h0L18x1XvbuVo2lvjGZ/ jll+quhRZD09hqOh6JSzJFy8ChIu53hOiz+6MJ8YM8J6R4v7oxOmknCXh XN89S5vSOnRGpAxYrNemaRbrx6RMrLRL/urOskhidLIOJE75bYkOzRk5S H6vVO9YWHnLWHwgIJtVXeYtM7t2mHffcJGWW8e3gNb6Dela+KDaXrcZ0+ A==; X-IronPort-AV: E=McAfee;i="6500,9779,10603"; a="324979654" X-IronPort-AV: E=Sophos;i="5.97,254,1669104000"; d="scan'208";a="324979654" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Jan 2023 04:14:30 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10603"; a="726981832" X-IronPort-AV: E=Sophos;i="5.97,254,1669104000"; d="scan'208";a="726981832" Received: from lkp-server01.sh.intel.com (HELO ffa7f14d1d0f) ([10.239.97.150]) by fmsmga008.fm.intel.com with ESMTP; 28 Jan 2023 04:14:28 -0800 Received: from kbuild by ffa7f14d1d0f with local (Exim 4.96) (envelope-from ) id 1pLk6G-0000dd-0H; Sat, 28 Jan 2023 12:14:28 +0000 Date: Sat, 28 Jan 2023 20:13:43 +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 7324/8766] drivers/gpu/drm/i915/gem/i915_gem_ttm.c:1066:21: sparse: sparse: incorrect type in assignment (different base types) Message-ID: <202301282050.PL1UGurJ-lkp@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Rspam-User: X-Rspamd-Queue-Id: 1FF3120002 X-Rspamd-Server: rspam01 X-Stat-Signature: pt63g51xeioii61hoyu8n6uy3nb34srk X-HE-Tag: 1674908071-154798 X-HE-Meta: U2FsdGVkX1+MHp2dj9rAfFtbZgUlLGZhSFKbhAVK/Rsw8lFoSg+manbIGfdzqvezFmOvccznUNzhxdb7sJG90boRBe60TJvwPPLW9Acy9bpm7XEF3b5/boWU4+tu7Kiy5Kaawf5IzHjiys5/857rPqJ9FXfCgZPjTuz3qK+HZno52Z7ot7oDDfVnKUHCHouAQQfgIF7ao3R74Sa+n0xp/ENAIkJRKPDgrD7IeBpiDGU77gO0eqdFyvpp4R+XTYEQwRi9fJVcL/8Dfx+YIdvn81Mh1rrfz+7My4p9UEigC91VvJVGUqK7kz4yz8ZtXfWM+wPIPv66+Z1uKIyCOWJId3LXRlC92bXqh0JSYfBcssT5m8HRYVf3O6QtvpkiNLGSAjdzaQRz16PitQL7Dtf+BlXM92YaFu+S44bkhMIkQZcpUUiYC8K2OiEWnMErcPVrX7HSst7wjTn43MKk7EQcTymGS/fx9u6iQopDyxnjnfAdVU0hckOZe7oaBwW7RfzV8qnsJg46rAnpvOVHuoCKKU4cKHSjJH37gCrUQ7udXzpDBDf6MtDkQG4D2L04/yeWTmgelt2QFs2j6eZN18oEjU0x11Wfk1+ihj5L8+/cY1vUWkLFwMJtd49xG6Gf+d5A5Uwl/WpqXv21RBd8QpUVtJnwe15OmfnmFu0WW4ossAplEZ4eatKHJclPdxFdTzYu+E4IDAok8qTq28t4hKVi5/ZLchSOAEvf7AftLcZ0QSz/HxR+ksdvjxFnatW1mtsbiFBnRyfsEgvd49PHlV6YNqZ0yomfGUseQIibKsOT5VY3G3QAlZZ7hkZka5jFFl2+UxG//+canQIGmfCU3N9cwDALu5YFA+sy0aHYWHcpuRRgqdFMUE+UMF9U46+l3inD72TEqitejzAh5lsY1UuAzkSLgqdm+HxfKjKUQs0fUVo0+rO3yN90pw9Vc6fAbSFwjwXA7zqn8o4r147ctiq IhnSdTwg iPOYpix/VG4idKnK43g2lyn99Q/5YO/f6PZEQS7zUEQOuFVEKa0Yw1fQJB1Y3DVaeZXdisinoBBwtTskKq3aLzL1q78g9IP6//WHlGNKEp4SCM7AP0IEgyjcfainB6o8Osru4xG0AwXNVLG5/hEZgooUnvC/y2xq33rQ+0tY3wOjrB0WdgczzF5xUf0wrmd6vQFA02gDy1j8pPxrJR135YjH+jk8Xym3uN8LgGyk03uBNjnB/Px687VfeY8HdhPdKJ11bCQanBx+EKump2GYXEss+33QT4865LUt1MDrp9UaEyEs5KchhTBnCJZIMJzwl65GsSYx5vXuWTzVK+DngixYKGSzGlbjPPqqHpe8Yzi+f6UPHCSHbgEbIP0bx6z5+uW6ESO6YGEzJ2QqMf5SbXFS6E8HFXN4jREURCBP86HFGtOuyzgaDAbEs+NMRVMhIFc/bLgiydl+Ymg36E5Qtct6Dwg== 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: e2f86c02fdc96ca29ced53221a3cbf50aa6f8b49 commit: 516198d317d81f33839ca850e83f6717b0d80e80 [7324/8766] drm/i915: audit bo->resource usage v3 config: i386-randconfig-s041-20230123 (https://download.01.org/0day-ci/archive/20230128/202301282050.PL1UGurJ-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 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