Hi Chen,
url:
https://github.com/0day-ci/linux/commits/Chen-Li/drm-amdgpu-radeon-fix-me...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
d01e7f10dae29eba0f9ada82b65d24e035d5b2f9
config: x86_64-randconfig-m001-20201216 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 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>
New smatch warnings:
drivers/gpu/drm/radeon/radeon_uvd.c:805 radeon_uvd_get_create_msg() error: uninitialized
symbol 'i'.
drivers/gpu/drm/radeon/radeon_uvd.c:833 radeon_uvd_get_destroy_msg() error: uninitialized
symbol 'i'.
Old smatch warnings:
drivers/gpu/drm/radeon/radeon_uvd.c:568 radeon_uvd_cs_msg() warn: ignoring unreachable
code.
vim +/i +805 drivers/gpu/drm/radeon/radeon_uvd.c
f2ba57b5eab8817 Christian König 2013-04-08 777 int radeon_uvd_get_create_msg(struct
radeon_device *rdev, int ring,
f2ba57b5eab8817 Christian König 2013-04-08 778 uint32_t handle, struct
radeon_fence **fence)
f2ba57b5eab8817 Christian König 2013-04-08 779 {
feba9b0bcf492ba Christian König 2014-08-22 780 /* we use the last page of the vcpu bo
for the UVD message */
feba9b0bcf492ba Christian König 2014-08-22 781 uint64_t offs =
radeon_bo_size(rdev->uvd.vcpu_bo) -
feba9b0bcf492ba Christian König 2014-08-22 782 RADEON_GPU_PAGE_SIZE;
f2ba57b5eab8817 Christian König 2013-04-08 783
feba9b0bcf492ba Christian König 2014-08-22 784 uint32_t *msg = rdev->uvd.cpu_addr +
offs;
feba9b0bcf492ba Christian König 2014-08-22 785 uint64_t addr = rdev->uvd.gpu_addr +
offs;
f2ba57b5eab8817 Christian König 2013-04-08 786
feba9b0bcf492ba Christian König 2014-08-22 787 int r, i;
f2ba57b5eab8817 Christian König 2013-04-08 788
feba9b0bcf492ba Christian König 2014-08-22 789 r =
radeon_bo_reserve(rdev->uvd.vcpu_bo, true);
feba9b0bcf492ba Christian König 2014-08-22 790 if (r)
f2ba57b5eab8817 Christian König 2013-04-08 791 return r;
f2ba57b5eab8817 Christian König 2013-04-08 792
f2ba57b5eab8817 Christian König 2013-04-08 793 /* stitch together an UVD create msg */
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 794 msg[0] = cpu_to_le32(0x00000de4);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 795 msg[1] = cpu_to_le32(0x00000000);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 796 msg[2] = cpu_to_le32(handle);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 797 msg[3] = cpu_to_le32(0x00000000);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 798 msg[4] = cpu_to_le32(0x00000000);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 799 msg[5] = cpu_to_le32(0x00000000);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 800 msg[6] = cpu_to_le32(0x00000000);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 801 msg[7] = cpu_to_le32(0x00000780);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 802 msg[8] = cpu_to_le32(0x00000440);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 803 msg[9] = cpu_to_le32(0x00000000);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 804 msg[10] = cpu_to_le32(0x01b37000);
201257d71c519be Chen Li 2020-12-16 @805 memset_io(&msg[i], 0x0, 1013 *
sizeof(uint32_t));
^^^^^^^
The "i" variable is never initialized anywhere.
f2ba57b5eab8817 Christian König 2013-04-08 806
feba9b0bcf492ba Christian König 2014-08-22 807 r = radeon_uvd_send_msg(rdev, ring,
addr, fence);
feba9b0bcf492ba Christian König 2014-08-22 808
radeon_bo_unreserve(rdev->uvd.vcpu_bo);
feba9b0bcf492ba Christian König 2014-08-22 809 return r;
f2ba57b5eab8817 Christian König 2013-04-08 810 }
f2ba57b5eab8817 Christian König 2013-04-08 811
f2ba57b5eab8817 Christian König 2013-04-08 812 int radeon_uvd_get_destroy_msg(struct
radeon_device *rdev, int ring,
f2ba57b5eab8817 Christian König 2013-04-08 813 uint32_t handle, struct
radeon_fence **fence)
f2ba57b5eab8817 Christian König 2013-04-08 814 {
feba9b0bcf492ba Christian König 2014-08-22 815 /* we use the last page of the vcpu bo
for the UVD message */
feba9b0bcf492ba Christian König 2014-08-22 816 uint64_t offs =
radeon_bo_size(rdev->uvd.vcpu_bo) -
feba9b0bcf492ba Christian König 2014-08-22 817 RADEON_GPU_PAGE_SIZE;
f2ba57b5eab8817 Christian König 2013-04-08 818
feba9b0bcf492ba Christian König 2014-08-22 819 uint32_t *msg = rdev->uvd.cpu_addr +
offs;
feba9b0bcf492ba Christian König 2014-08-22 820 uint64_t addr = rdev->uvd.gpu_addr +
offs;
f2ba57b5eab8817 Christian König 2013-04-08 821
feba9b0bcf492ba Christian König 2014-08-22 822 int r, i;
f2ba57b5eab8817 Christian König 2013-04-08 823
feba9b0bcf492ba Christian König 2014-08-22 824 r =
radeon_bo_reserve(rdev->uvd.vcpu_bo, true);
feba9b0bcf492ba Christian König 2014-08-22 825 if (r)
f2ba57b5eab8817 Christian König 2013-04-08 826 return r;
f2ba57b5eab8817 Christian König 2013-04-08 827
f2ba57b5eab8817 Christian König 2013-04-08 828 /* stitch together an UVD destroy msg
*/
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 829 msg[0] = cpu_to_le32(0x00000de4);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 830 msg[1] = cpu_to_le32(0x00000002);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 831 msg[2] = cpu_to_le32(handle);
9b1be4dc02bb6b9 Alex Deucher 2013-06-07 832 msg[3] = cpu_to_le32(0x00000000);
201257d71c519be Chen Li 2020-12-16 @833 memset_io(&msg[i], 0x0, 1020 *
sizeof(uint32_t));
^^^^^^^
Same
f2ba57b5eab8817 Christian König 2013-04-08 834
feba9b0bcf492ba Christian König 2014-08-22 835 r = radeon_uvd_send_msg(rdev, ring,
addr, fence);
feba9b0bcf492ba Christian König 2014-08-22 836
radeon_bo_unreserve(rdev->uvd.vcpu_bo);
feba9b0bcf492ba Christian König 2014-08-22 837 return r;
f2ba57b5eab8817 Christian König 2013-04-08 838 }
55b51c88c5167ba Christian König 2013-04-18 839
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
_______________________________________________
kbuild mailing list -- kbuild(a)lists.01.org
To unsubscribe send an email to kbuild-leave(a)lists.01.org