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