Simply complain if the combined result of start_page and num_pages goes over the pages bo has. Let me know if the added warning is too heavy a hammer.
Cc: Christian Koenig <[email protected]> Cc: Huang Rui <[email protected]> Cc: Junwei Zhang <[email protected]> Signed-off-by: Hillf Danton <[email protected]> --- --- a/drivers/gpu/drm/ttm/ttm_bo_util.c 2019-04-02 09:27:24.521761100 +0800 +++ b/drivers/gpu/drm/ttm/ttm_bo_util.c 2019-04-02 09:37:52.108898500 +0800 @@ -631,6 +631,8 @@ int ttm_bo_kmap(struct ttm_buffer_object return -EINVAL; if (start_page > bo->num_pages) return -EINVAL; + if (WARN_ON(start_page > bo->num_pages - num_pages)) + return -EINVAL; (void) ttm_mem_io_lock(man, false); ret = ttm_mem_io_reserve(bo->bdev, &bo->mem); --
_______________________________________________ dri-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/dri-devel
