OSDN Git Service

drm: vkms: Alloc the compose frame using vzalloc
authorIgor Torrente <igormtorrente@gmail.com>
Mon, 4 Apr 2022 20:45:07 +0000 (17:45 -0300)
committerMelissa Wen <melissa.srw@gmail.com>
Sun, 12 Jun 2022 23:14:25 +0000 (22:14 -0100)
commit16490922a95f4f67eb9d918f94a4f5b5bdc9eb80
tree0bd5027bf7a0b3d09e09d3469111283c47d32db4
parent24f6fe3226c6f9f1b8406311a96b59c6e650b707
drm: vkms: Alloc the compose frame using vzalloc

Currently, the memory to the composition frame is being allocated using
the kzmalloc. This comes with the limitation of maximum size of one
page size(which in the x86_64 is 4Kb and 4MB for default and hugepage
respectively).

Somes test of igt (e.g. kms_plane@pixel-format) uses more than 4MB when
testing some pixel formats like ARGB16161616 and the following error were
showing up when running kms_plane@plane-panning-bottom-right*:

[drm:vkms_composer_worker [vkms]] *ERROR* Cannot allocate memory for
output frame.

This problem is addessed by allocating the memory using kvzalloc that
circunvents this limitation.

V5: Improve the commit message and drop the debugging issues in VKMS
TO-DO(Melissa Wen).

Reviewed-by: Melissa Wen <mwen@igalia.com>
Signed-off-by: Igor Torrente <igormtorrente@gmail.com>
Signed-off-by: Melissa Wen <melissa.srw@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220404204515.42144-2-igormtorrente@gmail.com
Documentation/gpu/vkms.rst
drivers/gpu/drm/vkms/vkms_composer.c