We need to handle allocation failures and bail out. While at it, tune
the allocation failures down to debug level.

syzbot injected an allocation failure and then hit this WARN_ON.

Reported-by: syzbot+eb6e5365f23c02517...@syzkaller.appspotmail.com
Signed-off-by: Daniel Vetter <daniel.vet...@intel.com>
Cc: Haneen Mohammed <hamohammed...@gmail.com>
Cc: Sean Paul <seanp...@chromium.org>
Cc: Daniel Vetter <daniel.vet...@ffwll.ch>
Cc: Rodrigo Siqueira <rodrigosiqueiram...@gmail.com>
Cc: Gustavo Padovan <gustavo.pado...@collabora.com>
---
 drivers/gpu/drm/vkms/vkms_plane.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/vkms/vkms_plane.c 
b/drivers/gpu/drm/vkms/vkms_plane.c
index 7041007396ae..e3bcea4b4891 100644
--- a/drivers/gpu/drm/vkms/vkms_plane.c
+++ b/drivers/gpu/drm/vkms/vkms_plane.c
@@ -23,8 +23,11 @@ vkms_plane_duplicate_state(struct drm_plane *plane)
                return NULL;
 
        crc_data = kzalloc(sizeof(*crc_data), GFP_KERNEL);
-       if (WARN_ON(!crc_data))
-               DRM_INFO("Couldn't allocate crc_data");
+       if (!crc_data) {
+               DRM_DEBUG_KMS("Couldn't allocate crc_data\n");
+               kfree(vkms_state);
+               return NULL;
+       }
 
        vkms_state->crc_data = crc_data;
 
-- 
2.19.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to