"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. Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> 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); _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel