* drivers/gpu/drm/msm/msm_gem.c:282 msm_gem_fault() warn: inconsistent returns 'obj->resv'.
@ 2021-03-01 10:53 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-03-01 10:53 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 5103 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Rob Clark <robdclark@chromium.org>
CC: "Kristian H. Kristensen" <hoegsberg@google.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fe07bfda2fb9cdef8a4d4008a409bb02f35f1bd8
commit: 6c0e3ea25047694f97d01fb88c23ed5c4ed44da3 drm/msm/gem: Switch over to obj->resv for locking
date: 4 months ago
:::::: branch date: 11 hours ago
:::::: commit date: 4 months ago
config: arm64-randconfig-m031-20210301 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/gpu/drm/msm/msm_gem.c:282 msm_gem_fault() warn: inconsistent returns 'obj->resv'.
vim +282 drivers/gpu/drm/msm/msm_gem.c
c8afe684c95cd1 Rob Clark 2013-06-26 236
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 237 vm_fault_t msm_gem_fault(struct vm_fault *vmf)
c8afe684c95cd1 Rob Clark 2013-06-26 238 {
11bac80004499e Dave Jiang 2017-02-24 239 struct vm_area_struct *vma = vmf->vma;
c8afe684c95cd1 Rob Clark 2013-06-26 240 struct drm_gem_object *obj = vma->vm_private_data;
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 241 struct msm_gem_object *msm_obj = to_msm_bo(obj);
c8afe684c95cd1 Rob Clark 2013-06-26 242 struct page **pages;
c8afe684c95cd1 Rob Clark 2013-06-26 243 unsigned long pfn;
c8afe684c95cd1 Rob Clark 2013-06-26 244 pgoff_t pgoff;
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 245 int err;
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 246 vm_fault_t ret;
c8afe684c95cd1 Rob Clark 2013-06-26 247
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 248 /*
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 249 * vm_ops.open/drm_gem_mmap_obj and close get and put
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 250 * a reference on obj. So, we dont need to hold one here.
c8afe684c95cd1 Rob Clark 2013-06-26 251 */
a6ae74c956e72c Rob Clark 2020-10-23 252 err = msm_gem_lock_interruptible(obj);
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 253 if (err) {
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 254 ret = VM_FAULT_NOPAGE;
c8afe684c95cd1 Rob Clark 2013-06-26 255 goto out;
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 256 }
c8afe684c95cd1 Rob Clark 2013-06-26 257
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 258 if (WARN_ON(msm_obj->madv != MSM_MADV_WILLNEED)) {
a6ae74c956e72c Rob Clark 2020-10-23 259 msm_gem_unlock(obj);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 260 return VM_FAULT_SIGBUS;
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 261 }
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 262
c8afe684c95cd1 Rob Clark 2013-06-26 263 /* make sure we have pages attached now */
c8afe684c95cd1 Rob Clark 2013-06-26 264 pages = get_pages(obj);
c8afe684c95cd1 Rob Clark 2013-06-26 265 if (IS_ERR(pages)) {
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 266 ret = vmf_error(PTR_ERR(pages));
c8afe684c95cd1 Rob Clark 2013-06-26 267 goto out_unlock;
c8afe684c95cd1 Rob Clark 2013-06-26 268 }
c8afe684c95cd1 Rob Clark 2013-06-26 269
c8afe684c95cd1 Rob Clark 2013-06-26 270 /* We don't use vmf->pgoff since that has the fake offset: */
1a29d85eb0f19b Jan Kara 2016-12-14 271 pgoff = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
c8afe684c95cd1 Rob Clark 2013-06-26 272
871d812aa43e63 Rob Clark 2013-11-16 273 pfn = page_to_pfn(pages[pgoff]);
c8afe684c95cd1 Rob Clark 2013-06-26 274
1a29d85eb0f19b Jan Kara 2016-12-14 275 VERB("Inserting %p pfn %lx, pa %lx", (void *)vmf->address,
c8afe684c95cd1 Rob Clark 2013-06-26 276 pfn, pfn << PAGE_SHIFT);
c8afe684c95cd1 Rob Clark 2013-06-26 277
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 278 ret = vmf_insert_mixed(vma, vmf->address, __pfn_to_pfn_t(pfn, PFN_DEV));
c8afe684c95cd1 Rob Clark 2013-06-26 279 out_unlock:
a6ae74c956e72c Rob Clark 2020-10-23 280 msm_gem_unlock(obj);
c8afe684c95cd1 Rob Clark 2013-06-26 281 out:
a5f74ec7d3cb62 Souptick Joarder 2018-05-21 @282 return ret;
c8afe684c95cd1 Rob Clark 2013-06-26 283 }
c8afe684c95cd1 Rob Clark 2013-06-26 284
:::::: The code at line 282 was first introduced by commit
:::::: a5f74ec7d3cb6278255f7bf2ffb28baa6ad6e157 gpu: drm: msm: Change return type to vm_fault_t
:::::: TO: Souptick Joarder <jrdr.linux@gmail.com>
:::::: CC: Rob Clark <robdclark@gmail.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 33418 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-03-01 10:53 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-01 10:53 drivers/gpu/drm/msm/msm_gem.c:282 msm_gem_fault() warn: inconsistent returns 'obj->resv' kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.