Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/ttm: Include <linux/vmalloc.h> to fix MIPS build

On MIPS, vmap() and vunmap() are undeclared in ttm_bo_util.c. An
error message is shown below.

CC drivers/gpu/drm/ttm/ttm_bo_util.o
../drivers/gpu/drm/ttm/ttm_bo_util.c: In function 'ttm_bo_kmap_ttm':
../drivers/gpu/drm/ttm/ttm_bo_util.c:364:32: error: implicit declaration of function 'vmap'; did you mean 'kmap'? [-Werror=implicit-function-declaration]
364 | map->virtual = vmap(ttm->pages + start_page, num_pages,
| ^~~~
| kmap
../drivers/gpu/drm/ttm/ttm_bo_util.c:364:30: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
364 | map->virtual = vmap(ttm->pages + start_page, num_pages,
| ^
../drivers/gpu/drm/ttm/ttm_bo_util.c: In function 'ttm_bo_kunmap':
../drivers/gpu/drm/ttm/ttm_bo_util.c:429:17: error: implicit declaration of function 'vunmap'; did you mean 'kunmap'? [-Werror=implicit-function-declaration]
429 | vunmap(map->virtual);
| ^~~~~~
| kunmap
../drivers/gpu/drm/ttm/ttm_bo_util.c: In function 'ttm_bo_vmap':
../drivers/gpu/drm/ttm/ttm_bo_util.c:509:23: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
509 | vaddr = vmap(ttm->pages, ttm->num_pages, 0, prot);
| ^

Fix this by including <linux/vmalloc.h>.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Christian König <christian.koenig@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230116121023.14245-1-tzimmermann@suse.de

+2
+2
drivers/gpu/drm/ttm/ttm_bo_util.c
··· 29 29 * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com> 30 30 */ 31 31 32 + #include <linux/vmalloc.h> 33 + 32 34 #include <drm/ttm/ttm_bo.h> 33 35 #include <drm/ttm/ttm_placement.h> 34 36 #include <drm/ttm/ttm_tt.h>