Message ID | 20240718141141.872558-1-make24@iscas.ac.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v3] drm/amdgpu: fix a possible null pointer dereference | expand |
Applied. Thanks! On Thu, Jul 18, 2024 at 10:12 AM Ma Ke <make24@iscas.ac.cn> wrote: > > In amdgpu_connector_add_common_modes(), the return value of drm_cvt_mode() > is assigned to mode, which will lead to a NULL pointer dereference on > failure of drm_cvt_mode(). Add a check to avoid npd. > > Cc: stable@vger.kernel.org > Fixes: d38ceaf99ed0 ("drm/amdgpu: add core driver (v4)") > Signed-off-by: Ma Ke <make24@iscas.ac.cn> > --- > Changes in v3: > - added Cc stable line. > Changes in v2: > - modified the patch according to suggestions; > - added Fixes line. > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c > index 9caba10315a8..25b51b600f6f 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c > @@ -458,6 +458,9 @@ static void amdgpu_connector_add_common_modes(struct drm_encoder *encoder, > continue; > > mode = drm_cvt_mode(dev, common_modes[i].w, common_modes[i].h, 60, false, false, false); > + if (!mode) > + return; > + > drm_mode_probed_add(connector, mode); > } > } > -- > 2.25.1 >
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c index 9caba10315a8..25b51b600f6f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c @@ -458,6 +458,9 @@ static void amdgpu_connector_add_common_modes(struct drm_encoder *encoder, continue; mode = drm_cvt_mode(dev, common_modes[i].w, common_modes[i].h, 60, false, false, false); + if (!mode) + return; + drm_mode_probed_add(connector, mode); } }
In amdgpu_connector_add_common_modes(), the return value of drm_cvt_mode() is assigned to mode, which will lead to a NULL pointer dereference on failure of drm_cvt_mode(). Add a check to avoid npd. Cc: stable@vger.kernel.org Fixes: d38ceaf99ed0 ("drm/amdgpu: add core driver (v4)") Signed-off-by: Ma Ke <make24@iscas.ac.cn> --- Changes in v3: - added Cc stable line. Changes in v2: - modified the patch according to suggestions; - added Fixes line. --- drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 3 +++ 1 file changed, 3 insertions(+)