[bug report] drm/ttm: Fix dummy res NULL ptr deref bug

Arunpravin Paneer Selvam arunpravin.paneerselvam at amd.com
Thu Aug 11 11:06:33 UTC 2022


Hi Dan,

drm-misc-fixes doesn't have the updated ttm_bo.c file, we have the 
updated ttm_bo.c version in
drm-misc-next branch. Please find below for the line number 907.

On 8/11/2022 3:25 PM, Dan Carpenter wrote:
> Hello Arunpravin Paneer Selvam,
>
> This is a semi-automatic email about new static checker warnings.
>
> The patch cf4b7387c0a8: "drm/ttm: Fix dummy res NULL ptr deref bug"
> from Aug 9, 2022, leads to the following Smatch complaint:
>
>      drivers/gpu/drm/ttm/ttm_bo.c:915 ttm_bo_validate()
>      warn: variable dereferenced before check 'bo->resource' (see line 907)
>
> drivers/gpu/drm/ttm/ttm_bo.c
>     906		 */
>     907		if (!ttm_resource_compat(bo->resource, placement)) {
>                                           ^^^^^^^^^^^^
> Unchecked dereference here inside the function.

|if (!bo->resource || !ttm_resource_compat(bo->resource, placement)) { 
we have this version in drm-misc-next Regards, Arun |

>
>     908			ret = ttm_bo_move_buffer(bo, placement, ctx);
>     909			if (ret)
>     910				return ret;
>     911		}
>     912		/*
>     913		 * We might need to add a TTM.
>     914		 */
>     915		if (!bo->resource || bo->resource->mem_type == TTM_PL_SYSTEM) {
>                       ^^^^^^^^^^^^
> Checked too late.
>
> This NULL check was added deliberately based on a report from the kbuild
> bot, but it's not clear why bo->resource is NULL at this point.  Was the
> patch tested?  There is astable at vger.kernel.org  but there is no Fixes
> tag.
>
>     916			ret = ttm_tt_create(bo, true);
>     917			if (ret)
>
> regards,
> dan carpenter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20220811/7a2ab256/attachment.htm>


More information about the dri-devel mailing list