On Thu, 2018-02-15 at 16:16 +0100, Greg Kroah-Hartman wrote:
> 4.4-stable review patch.  If anyone has any objections, please let me know.
> 
> ------------------
> 
> From: Arnd Bergmann <a...@arndb.de>
> 
> commit 9e343e87d2c4c707ef8fae2844864d4dde3a2d13 upstream.
[...]
> -static inline int map_word_andequal(struct map_info *map, map_word val1, 
> map_word val2, map_word val3)
> -{
> -     int i;
> -
> -     for (i = 0; i < map_words(map); i++) {
> -             if ((val1.x[i] & val2.x[i]) != val3.x[i])
> -                     return 0;
> -     }
> -
> -     return 1;
> -}
[...]
> +#define map_word_andequal(map, val1, val2, val3)                     \
> +({                                                                   \
> +     int i, ret = 1;                                                 \
> +     for (i = 0; i < map_words(map); i++) {                          \
> +             if (((val1).x[i] & (val2).x[i]) != (val2).x[i]) {       \
[...]

The right-hand side of this comparison is now using val2 instead of
val3.  (This bug seems to be unfixed upstream.)

Ben.

-- 
Ben Hutchings
Software Developer, Codethink Ltd.

Reply via email to