All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Dongwon Kim <dongwon.kim@intel.com>, dri-devel@lists.freedesktop.org
Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org,
	Vivek Kasireddy <vivek.kasireddy@intel.com>,
	Gerd Hoffmann <kraxel@redhat.com>,
	Dongwon Kim <dongwon.kim@intel.com>,
	Gurchetan Singh <gurchetansingh@chromium.org>
Subject: Re: [PATCH 3/3] drm/virtio: use the fence for every plane update
Date: Wed, 11 May 2022 15:10:46 +0800	[thread overview]
Message-ID: <202205111533.LaZm5cYP-lkp@intel.com> (raw)
In-Reply-To: <20220511000623.12938-3-dongwon.kim@intel.com>

Hi Dongwon,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm/drm-next]
[also build test WARNING on drm-exynos/exynos-drm-next drm-intel/for-linux-next drm-tip/drm-tip tegra-drm/drm/tegra/for-next v5.18-rc6 next-20220510]
[cannot apply to airlied/drm-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/intel-lab-lkp/linux/commits/Dongwon-Kim/drm-virtio-release-ops-for-virtgpu-fence-release/20220511-081226
base:   git://anongit.freedesktop.org/drm/drm drm-next
config: arm-randconfig-r015-20220509 (https://download.01.org/0day-ci/archive/20220511/202205111533.LaZm5cYP-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 18dd123c56754edf62c7042dcf23185c3727610f)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # https://github.com/intel-lab-lkp/linux/commit/5c7787de5069b504754aea17bf8137faae26fe66
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Dongwon-Kim/drm-virtio-release-ops-for-virtgpu-fence-release/20220511-081226
        git checkout 5c7787de5069b504754aea17bf8137faae26fe66
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/gpu/drm/virtio/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/virtio/virtgpu_plane.c:147:6: warning: variable 'objs' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
           if (fence) {
               ^~~~~
   drivers/gpu/drm/virtio/virtgpu_plane.c:158:26: note: uninitialized use occurs here
                                         width, height, objs, fence);
                                                        ^~~~
   drivers/gpu/drm/virtio/virtgpu_plane.c:147:2: note: remove the 'if' if its condition is always true
           if (fence) {
           ^~~~~~~~~~~
   drivers/gpu/drm/virtio/virtgpu_plane.c:140:38: note: initialize the variable 'objs' to silence this warning
           struct virtio_gpu_object_array *objs;
                                               ^
                                                = NULL
   1 warning generated.


vim +147 drivers/gpu/drm/virtio/virtgpu_plane.c

544c521d4ab8f2a Gerd Hoffmann   2019-10-23  131  
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  132  static void virtio_gpu_resource_flush(struct drm_plane *plane,
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  133  				      uint32_t x, uint32_t y,
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  134  				      uint32_t width, uint32_t height)
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  135  {
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  136  	struct drm_device *dev = plane->dev;
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  137  	struct virtio_gpu_device *vgdev = dev->dev_private;
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  138  	struct virtio_gpu_framebuffer *vgfb;
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  139  	struct virtio_gpu_object *bo;
47558b189c1d340 Dongwon Kim     2022-05-10  140  	struct virtio_gpu_object_array *objs;
47558b189c1d340 Dongwon Kim     2022-05-10  141  	struct virtio_gpu_fence *fence;
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  142  
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  143  	vgfb = to_virtio_gpu_framebuffer(plane->state->fb);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  144  	bo = gem_to_virtio_gpu_obj(vgfb->base.obj[0]);
5c7787de5069b50 Dongwon Kim     2022-05-10  145  	fence = virtio_gpu_fence_alloc(vgdev, vgdev->fence_drv.context, 0);
47558b189c1d340 Dongwon Kim     2022-05-10  146  
47558b189c1d340 Dongwon Kim     2022-05-10 @147  	if (fence) {
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  148  		objs = virtio_gpu_array_alloc(1);
47558b189c1d340 Dongwon Kim     2022-05-10  149  		if (!objs) {
47558b189c1d340 Dongwon Kim     2022-05-10  150  			kfree(fence);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  151  			return;
47558b189c1d340 Dongwon Kim     2022-05-10  152  		}
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  153  		virtio_gpu_array_add_obj(objs, vgfb->base.obj[0]);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  154  		virtio_gpu_array_lock_resv(objs);
47558b189c1d340 Dongwon Kim     2022-05-10  155  	}
47558b189c1d340 Dongwon Kim     2022-05-10  156  
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  157  	virtio_gpu_cmd_resource_flush(vgdev, bo->hw_res_handle, x, y,
47558b189c1d340 Dongwon Kim     2022-05-10  158  				      width, height, objs, fence);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  159  	virtio_gpu_notify(vgdev);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  160  
47558b189c1d340 Dongwon Kim     2022-05-10  161  	if (fence) {
47558b189c1d340 Dongwon Kim     2022-05-10  162  		dma_fence_wait_timeout(&fence->f, true,
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  163  				       msecs_to_jiffies(50));
47558b189c1d340 Dongwon Kim     2022-05-10  164  		dma_fence_put(&fence->f);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  165  	}
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  166  }
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  167  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Dongwon Kim <dongwon.kim@intel.com>, dri-devel@lists.freedesktop.org
Cc: kbuild-all@lists.01.org, Dongwon Kim <dongwon.kim@intel.com>,
	llvm@lists.linux.dev, Vivek Kasireddy <vivek.kasireddy@intel.com>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Gerd Hoffmann <kraxel@redhat.com>
Subject: Re: [PATCH 3/3] drm/virtio: use the fence for every plane update
Date: Wed, 11 May 2022 15:10:46 +0800	[thread overview]
Message-ID: <202205111533.LaZm5cYP-lkp@intel.com> (raw)
In-Reply-To: <20220511000623.12938-3-dongwon.kim@intel.com>

Hi Dongwon,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm/drm-next]
[also build test WARNING on drm-exynos/exynos-drm-next drm-intel/for-linux-next drm-tip/drm-tip tegra-drm/drm/tegra/for-next v5.18-rc6 next-20220510]
[cannot apply to airlied/drm-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/intel-lab-lkp/linux/commits/Dongwon-Kim/drm-virtio-release-ops-for-virtgpu-fence-release/20220511-081226
base:   git://anongit.freedesktop.org/drm/drm drm-next
config: arm-randconfig-r015-20220509 (https://download.01.org/0day-ci/archive/20220511/202205111533.LaZm5cYP-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 18dd123c56754edf62c7042dcf23185c3727610f)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # https://github.com/intel-lab-lkp/linux/commit/5c7787de5069b504754aea17bf8137faae26fe66
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Dongwon-Kim/drm-virtio-release-ops-for-virtgpu-fence-release/20220511-081226
        git checkout 5c7787de5069b504754aea17bf8137faae26fe66
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/gpu/drm/virtio/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/virtio/virtgpu_plane.c:147:6: warning: variable 'objs' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
           if (fence) {
               ^~~~~
   drivers/gpu/drm/virtio/virtgpu_plane.c:158:26: note: uninitialized use occurs here
                                         width, height, objs, fence);
                                                        ^~~~
   drivers/gpu/drm/virtio/virtgpu_plane.c:147:2: note: remove the 'if' if its condition is always true
           if (fence) {
           ^~~~~~~~~~~
   drivers/gpu/drm/virtio/virtgpu_plane.c:140:38: note: initialize the variable 'objs' to silence this warning
           struct virtio_gpu_object_array *objs;
                                               ^
                                                = NULL
   1 warning generated.


vim +147 drivers/gpu/drm/virtio/virtgpu_plane.c

544c521d4ab8f2a Gerd Hoffmann   2019-10-23  131  
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  132  static void virtio_gpu_resource_flush(struct drm_plane *plane,
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  133  				      uint32_t x, uint32_t y,
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  134  				      uint32_t width, uint32_t height)
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  135  {
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  136  	struct drm_device *dev = plane->dev;
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  137  	struct virtio_gpu_device *vgdev = dev->dev_private;
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  138  	struct virtio_gpu_framebuffer *vgfb;
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  139  	struct virtio_gpu_object *bo;
47558b189c1d340 Dongwon Kim     2022-05-10  140  	struct virtio_gpu_object_array *objs;
47558b189c1d340 Dongwon Kim     2022-05-10  141  	struct virtio_gpu_fence *fence;
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  142  
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  143  	vgfb = to_virtio_gpu_framebuffer(plane->state->fb);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  144  	bo = gem_to_virtio_gpu_obj(vgfb->base.obj[0]);
5c7787de5069b50 Dongwon Kim     2022-05-10  145  	fence = virtio_gpu_fence_alloc(vgdev, vgdev->fence_drv.context, 0);
47558b189c1d340 Dongwon Kim     2022-05-10  146  
47558b189c1d340 Dongwon Kim     2022-05-10 @147  	if (fence) {
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  148  		objs = virtio_gpu_array_alloc(1);
47558b189c1d340 Dongwon Kim     2022-05-10  149  		if (!objs) {
47558b189c1d340 Dongwon Kim     2022-05-10  150  			kfree(fence);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  151  			return;
47558b189c1d340 Dongwon Kim     2022-05-10  152  		}
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  153  		virtio_gpu_array_add_obj(objs, vgfb->base.obj[0]);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  154  		virtio_gpu_array_lock_resv(objs);
47558b189c1d340 Dongwon Kim     2022-05-10  155  	}
47558b189c1d340 Dongwon Kim     2022-05-10  156  
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  157  	virtio_gpu_cmd_resource_flush(vgdev, bo->hw_res_handle, x, y,
47558b189c1d340 Dongwon Kim     2022-05-10  158  				      width, height, objs, fence);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  159  	virtio_gpu_notify(vgdev);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  160  
47558b189c1d340 Dongwon Kim     2022-05-10  161  	if (fence) {
47558b189c1d340 Dongwon Kim     2022-05-10  162  		dma_fence_wait_timeout(&fence->f, true,
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  163  				       msecs_to_jiffies(50));
47558b189c1d340 Dongwon Kim     2022-05-10  164  		dma_fence_put(&fence->f);
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  165  	}
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  166  }
5c68ab9276aae47 Vivek Kasireddy 2021-06-10  167  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

  reply	other threads:[~2022-05-11  7:11 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-11  0:06 [PATCH 1/3] drm/virtio: .release ops for virtgpu fence release Dongwon Kim
2022-05-11  0:06 ` [PATCH 2/3] drm/virtio: fence created per cursor/plane update Dongwon Kim
2022-05-11  0:06 ` [PATCH 3/3] drm/virtio: use the fence for every plane update Dongwon Kim
2022-05-11  7:10   ` kernel test robot [this message]
2022-05-11  7:10     ` kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2022-05-11 13:28 kernel test robot
2022-05-11 13:37 ` Dan Carpenter
2022-05-11 13:37 ` Dan Carpenter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202205111533.LaZm5cYP-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=dongwon.kim@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gurchetansingh@chromium.org \
    --cc=kbuild-all@lists.01.org \
    --cc=kraxel@redhat.com \
    --cc=llvm@lists.linux.dev \
    --cc=vivek.kasireddy@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.