[patch] drm/nva3: checking the wrong variable
bskeggs at redhat.com
Tue Oct 11 15:26:16 PDT 2011
On Tue, 2011-10-11 at 17:34 +0300, Dan Carpenter wrote:
> "id" is unsigned here and it's never less than zero. I believe the
> intent was to check the return value from nva3_pm_pll_offset().
> Also I've changed it to pass on the -ENOENT error code from the lower
> levels instead of returning -EINVAL.
The patch looks correct. It's worth noting though that a complete
rewrite of that particular code is queued for 3.2 already.
> Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
> diff --git a/drivers/gpu/drm/nouveau/nva3_pm.c b/drivers/gpu/drm/nouveau/nva3_pm.c
> index e4b2b9e..0be517d 100644
> --- a/drivers/gpu/drm/nouveau/nva3_pm.c
> +++ b/drivers/gpu/drm/nouveau/nva3_pm.c
> @@ -112,8 +112,8 @@ nva3_pm_clock_pre(struct drm_device *dev, struct nouveau_pm_level *perflvl,
> return (ret == -ENOENT) ? NULL : ERR_PTR(ret);
> off = nva3_pm_pll_offset(id);
> - if (id < 0)
> - return ERR_PTR(-EINVAL);
> + if (off < 0)
> + return ERR_PTR(off);
> pll = kzalloc(sizeof(*pll), GFP_KERNEL);
More information about the dri-devel