]> git.baikalelectronics.ru Git - kernel.git/commit
drm/edid: Fix a missing-check bug in drm_load_edid_firmware()
authorGen Zhang <blackgod016574@gmail.com>
Fri, 24 May 2019 02:32:22 +0000 (10:32 +0800)
committerJani Nikula <jani.nikula@intel.com>
Fri, 24 May 2019 18:01:33 +0000 (21:01 +0300)
commitc77000b2f4f10f7cb8f764af806875b298cd731e
treed33e926240b2a662613446b16bed56ad10d5f68e
parentb54b2b95e2ddabcce80adb4beff9c48f9e9f420e
drm/edid: Fix a missing-check bug in drm_load_edid_firmware()

In drm_load_edid_firmware(), fwstr is allocated by kstrdup(). And fwstr
is dereferenced in the following codes. However, memory allocation
functions such as kstrdup() may fail and returns NULL. Dereferencing
this null pointer may cause the kernel go wrong. Thus we should check
this kstrdup() operation.
Further, if kstrdup() returns NULL, we should return ERR_PTR(-ENOMEM) to
the caller site.

Signed-off-by: Gen Zhang <blackgod016574@gmail.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190524023222.GA5302@zhanggen-UX430UQ
drivers/gpu/drm/drm_edid_load.c