bird-1.5.0-1.x86_64 crasches quite often on reconfiguration including renaming BGP protocols due to bad set of CFLAGS passed on compilation

Bartek Radwan groups at sq9mev.info
Sat Mar 26 13:46:32 CET 2016


On 26.03.2016 13:00, Tomasz Pala wrote:
>> Does anybody use PLD's bird on production?
> Yes, but not current. Nevertheless, so variable LA in 15-minutes window
> is weird -
1min, 5min and 15min have been quite similar since upgrade:
http://www.sq9mev.info/bird_cflags_loadavg_change_8h.png


now, when the CFLAGS are the same as upstream, could you try
Cflags in PLD 1.5.0-2 are not exactly the same as upstream.

PLD before 1.5.0-2:

-O2 -fwrapv -pipe -Wformat -Werror=format-security -gdwarf-4 
-fno-debug-types-section -fvar-tracking-assignments -g2 
-Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong 
--param=ssp-buffer-size=4 -fPIC -march=x86-64 -gdwarf-4 
-fno-debug-types-section -fvar-tracking-assignments -g2 
-I/usr/include/ncursesw -pthread

Upstream:
-g -O2 -pthread -Wall -Wstrict-prototypes -Wno-parentheses 
-Wno-pointer-sign -fno-strict-aliasing -fno-strict-overflow

1.5.0-2 just adds -fno-strict-aliasing -fno-strict-overflow

> using binaries they provide and compare?
Do they provide compiled binaries at all? Or you just meant binaries 
compilled from vanilla 
ftp://bird.network.cz/pub/bird/bird-doc-1.5.0.tar.gz ?

I'll make some further investigation later at night or tomorrow morning 
- this is production enviroment and i don't want to restart bird during 
day. I do not observe such a behavior in test enviroment, but in 
production enviroment there are several full view and IX sessions and 
it's rather hard to reproduce such enviroment on my desktop.

Another thing i'm going to check is backport last upstream changes 
related to primary issue (segfault after "renaming" protocol) onto 1.5.0 
and use PLD CFLAGS.

The changes are:

https://gitlab.labs.nic.cz/labs/bird/commit/54bb032d21d25a2221877e15325e79add10278ec
https://gitlab.labs.nic.cz/labs/bird/commit/665b8e5283df4f64eb44d8fb434489be1474b5d4

They aplyy on 1.5.0 cleanly and resolve "rename" issue.

Here's forked PLD bird repo with these changes:
https://github.com/sq9mev/bird/tree/rename_segfault


-- 
Regards
Bartek








More information about the pld-devel-en mailing list