[dpdk-dev] [PATCH] examples/performance-thread: fix segfault with in gcc 5.x

Thomas Monjalon thomas.monjalon at 6wind.com
Wed Apr 27 17:34:25 CEST 2016


2016-04-26 17:47, Tomasz Kulasek:
> It seems that with gcc >5.x and -O2/-O3 optimization breaks packet grouping
> algorithm in l3fwd-thread application causing segfault.
> 
> When last packet pointer "lp" and "pnum->u64" buffer points the same
> memory buffer, high optimization can cause unpredictable results. It seems
> that assignment of precalculated group sizes may interfere with
> initialization of new group size when lp points value inside current group
> and didn't should be changed.
> 
> With gcc >5.x and optimization we cannot be sure which assignment will be
> done first, so the group size can be counted incorrectly causing segfault.
> 
> This patch eliminates intersection of assignment of initial group size
> (lp[0] = 1) and precalculated group sizes when gptbl[v].idx < 4.
> 
> Fixes: d48415e1fee3 ("examples/performance-thread: add l3fwd-thread app")
> 
> Signed-off-by: Tomasz Kulasek <tomaszx.kulasek at intel.com>

Same patch as af1694d94 (for original l3fwd).
Applied, thanks



More information about the dev mailing list