Opened 15 years ago
Last modified 15 years ago
#683 closed defect
Crash/segfault on pjmedia_wsola_create() on ARM9 platform with GCC optimizations — at Initial Version
Reported by: | bennylp | Owned by: | bennylp |
---|---|---|---|
Priority: | normal | Milestone: | Known-Issues |
Component: | pjmedia | Version: | trunk |
Keywords: | Cc: | ||
Backport to 1.x milestone: | Backported: |
Description
gcc-4.2.1, arm926ej-s, Linux-2.6.23
Crash on pjmedia_wsola_create() function, specificly in the fixed-point version of create_win() function. The symptom is the "i" variable value in the "for(i=0; i<count; ++i)" loop goes beyond the range and possibly writes data to some random memory location, causing the segmentation fault.
The segfault occurs when the library is compiled with -O2/-O3 (and possibly higher). It does not happen when the optimization is turned off. So we suspect that this is due to some gcc optimization bug.
The solution now is to force WSOLA to use linear window, by declaring this (undocumented) macro in your config_site.h:
#define PJMEDIA_WSOLA_LINEAR_WIN 1