Re: [PATCH v2] net: revert "net: get rid of an signed integer overflow in ip_idents_reserve()"

From: David Miller
Date: Sun May 17 2020 - 15:34:41 EST


From: Shaokun Zhang <zhangshaokun@xxxxxxxxxxxxx>
Date: Sat, 16 May 2020 11:46:49 +0800

> From: Yuqi Jin <jinyuqi@xxxxxxxxxx>
>
> Commit adb03115f459 ("net: get rid of an signed integer overflow in ip_idents_reserve()")
> used atomic_cmpxchg to replace "atomic_add_return" inside the function
> "ip_idents_reserve". The reason was to avoid UBSAN warning.
> However, this change has caused performance degrade and in GCC-8,
> fno-strict-overflow is now mapped to -fwrapv -fwrapv-pointer
> and signed integer overflow is now undefined by default at all
> optimization levels[1]. Moreover, it was a bug in UBSAN vs -fwrapv
> /-fno-strict-overflow, so Let's revert it safely.
>
> [1] https://gcc.gnu.org/gcc-8/changes.html
>
> Suggested-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> Suggested-by: Eric Dumazet <edumazet@xxxxxxxxxx>
...
> Signed-off-by: Yuqi Jin <jinyuqi@xxxxxxxxxx>
> Signed-off-by: Shaokun Zhang <zhangshaokun@xxxxxxxxxxxxx>

Applied, thanks.