Re: [rfc patch] wm8994: range checking issue

From: Mark Brown
Date: Wed Mar 24 2010 - 08:59:54 EST


On Wed, Mar 24, 2010 at 03:01:07PM +0300, Dan Carpenter wrote:
> Smatch complained about BUG_ON(reg > WM8994_MAX_REGISTER) because the
> actual number of elements in the array was WM8994_REG_CACHE_SIZE + 1.

> I changed the BUG_ON() to return -EINVAL.

Please don't introduce orthogonal changes like this in patches, it's bad
practice and increases the chances of your patch being nacked.

> I was confused why WM8994_REG_CACHE_SIZE was different from the actual
> size of ->reg_cache and I was concerned because some places used
> ARRAY_SIZE() to find the end of the array and other places used
> WM8994_REG_CACHE_SIZE. In my patch, I made them the same.

This is caused by confusion with the MAX_CACHED_REGISTER definition in
the header. Best to use that one consistently, I guess - I've got a
sneaking suspicion something has gone AWOL in the driver publication
process.
--
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/