From: Eric Dumazet <eric.duma...@gmail.com>
Date: Tue, 20 Sep 2016 18:06:17 -0700
> From: Eric Dumazet <eduma...@google.com>
> Jiri Pirko reported an UBSAN warning happening in ip_idents_reserve()
>  UBSAN: Undefined behaviour in ./arch/x86/include/asm/atomic.h:156:11
>  signed integer overflow:
>  -2117905507 + -695755206 cannot be represented in type 'int'
> Since we do not have uatomic_add_return() yet, use atomic_cmpxchg()
> so that the arithmetics can be done using unsigned int.
> Fixes: 04ca6973f7c1 ("ip: make IP identifiers less predictable")
> Signed-off-by: Eric Dumazet <eduma...@google.com>
> Reported-by: Jiri Pirko <j...@resnulli.us>
> David, Jiri, I removed the prandom_u32() stuff in favor of a traditional
> loop to meet stable requirements. Thanks !