panasonic-laptop driver oddity

From: Andy Whitcroft
Date: Thu Jan 15 2009 - 10:47:33 EST


We have been looking at your panasonic-laptop driver with a view to
back porting it to 2.6.27, and the following inconsistancy was pointed
out to me. In bl_set_status() we ensure that bright is no lower than
sinf[SINF_AC_MIN_BRIGHT] and sinf[SINF_DC_MIN_BRIGHT], and then check if
it is lower than sinf[SINF_AC_MIN_BRIGHT]. That seems redundant.


static int bl_set_status(struct backlight_device *bd)
{
struct pcc_acpi *pcc = bl_get_data(bd);
int bright = bd->props.brightness;
int rc;

if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf))
return -EIO;

if (bright < pcc->sinf[SINF_AC_MIN_BRIGHT])
bright = pcc->sinf[SINF_AC_MIN_BRIGHT];

if (bright < pcc->sinf[SINF_DC_MIN_BRIGHT])
bright = pcc->sinf[SINF_DC_MIN_BRIGHT];

if (bright < pcc->sinf[SINF_AC_MIN_BRIGHT] ||
bright > pcc->sinf[SINF_AC_MAX_BRIGHT])
return -EINVAL;

We could not decide if this was simply belt and braces to constrain the
value, or if this should be a check against sinf[SINF_DC_MAX_BRIGHT].
Perhaps you could clarify?

-apw
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/