Hi Thomas,
url:
https://github.com/0day-ci/linux/commits/Thomas-Zimmermann/Default-to-cac...
base: c34f157421f6905e6b4a79a312e9175dce2bc607
config: arm64-randconfig-m031-20201111 (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(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
smatch warnings:
drivers/gpu/drm/drm_gem_shmem_helper.c:59 __drm_gem_shmem_create() error: potentially
dereferencing uninitialized 'shmem'.
vim +/shmem +59 drivers/gpu/drm/drm_gem_shmem_helper.c
7d2cd72a9aa3df3 Daniel Vetter 2020-05-29 38 static struct drm_gem_shmem_object *
7d2cd72a9aa3df3 Daniel Vetter 2020-05-29 39 __drm_gem_shmem_create(struct
drm_device *dev, size_t size, bool private)
2194a63a818db71 Noralf Trønnes 2019-03-12 40 {
2194a63a818db71 Noralf Trønnes 2019-03-12 41 struct drm_gem_shmem_object *shmem;
^^^^^
2194a63a818db71 Noralf Trønnes 2019-03-12 42 struct drm_gem_object *obj;
7d2cd72a9aa3df3 Daniel Vetter 2020-05-29 43 int ret = 0;
2194a63a818db71 Noralf Trønnes 2019-03-12 44
2194a63a818db71 Noralf Trønnes 2019-03-12 45 size = PAGE_ALIGN(size);
2194a63a818db71 Noralf Trønnes 2019-03-12 46
2194a63a818db71 Noralf Trønnes 2019-03-12 47 if
(dev->driver->gem_create_object)
2194a63a818db71 Noralf Trønnes 2019-03-12 48 obj =
dev->driver->gem_create_object(dev, size);
2194a63a818db71 Noralf Trønnes 2019-03-12 49 else
2194a63a818db71 Noralf Trønnes 2019-03-12 50 obj = kzalloc(sizeof(*shmem),
GFP_KERNEL);
2194a63a818db71 Noralf Trønnes 2019-03-12 51 if (!obj)
2194a63a818db71 Noralf Trønnes 2019-03-12 52 return ERR_PTR(-ENOMEM);
2194a63a818db71 Noralf Trønnes 2019-03-12 53
2194a63a818db71 Noralf Trønnes 2019-03-12 54 if (!obj->funcs)
2194a63a818db71 Noralf Trønnes 2019-03-12 55 obj->funcs =
&drm_gem_shmem_funcs;
2194a63a818db71 Noralf Trønnes 2019-03-12 56
6c0af452d25888d Thomas Zimmermann 2020-11-06 57 if (private) {
7d2cd72a9aa3df3 Daniel Vetter 2020-05-29 58 drm_gem_private_object_init(dev, obj,
size);
6c0af452d25888d Thomas Zimmermann 2020-11-06 @59 shmem->map_wc = false; /* dma-buf
mappings use always writecombine */
^^^^^^^^^^^^^^^^^^^^^
Not initialized until later
6c0af452d25888d Thomas Zimmermann 2020-11-06 60 } else {
2194a63a818db71 Noralf Trønnes 2019-03-12 61 ret = drm_gem_object_init(dev, obj,
size);
6c0af452d25888d Thomas Zimmermann 2020-11-06 62 }
2194a63a818db71 Noralf Trønnes 2019-03-12 63 if (ret)
2194a63a818db71 Noralf Trønnes 2019-03-12 64 goto err_free;
2194a63a818db71 Noralf Trønnes 2019-03-12 65
2194a63a818db71 Noralf Trønnes 2019-03-12 66 ret =
drm_gem_create_mmap_offset(obj);
2194a63a818db71 Noralf Trønnes 2019-03-12 67 if (ret)
2194a63a818db71 Noralf Trønnes 2019-03-12 68 goto err_release;
2194a63a818db71 Noralf Trønnes 2019-03-12 69
2194a63a818db71 Noralf Trønnes 2019-03-12 70 shmem = to_drm_gem_shmem_obj(obj);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2194a63a818db71 Noralf Trønnes 2019-03-12 71
mutex_init(&shmem->pages_lock);
2194a63a818db71 Noralf Trønnes 2019-03-12 72 mutex_init(&shmem->vmap_lock);
17acb9f35ed736c Rob Herring 2019-08-05 73
INIT_LIST_HEAD(&shmem->madv_list);
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org