Hello Alex Deucher,

The patch a12551072126: "drm/amdgpu: rework IP block registration
(v2)" from Oct 13, 2016, leads to the following static checker
warning:

        drivers/gpu/drm/amd/amdgpu/amdgpu_device.c:1504 amdgpu_device_ip_fini()
        error: dereferencing freed memory 'adev'

drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
  1495                  adev->ip_blocks[i].status.sw = false;
  1496                  adev->ip_blocks[i].status.valid = false;
  1497          }
  1498  
  1499          for (i = adev->num_ip_blocks - 1; i >= 0; i--) {
  1500                  if (!adev->ip_blocks[i].status.late_initialized)
  1501                          continue;
  1502                  if (adev->ip_blocks[i].version->funcs->late_fini)
  1503                          
adev->ip_blocks[i].version->funcs->late_fini((void *)adev);

The warning is because pp_late_fini() frees the parameter.  The
amdgpu_pp_late_fini() function doesn't so that's a bit weird.

  1504                  adev->ip_blocks[i].status.late_initialized = false;
                        ^^^^^^^^^^^^^^^
Dereference.

  1505          }
  1506  

regards,
dan carpenter
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to