FFTW / fftw3

DO NOT CHECK OUT THESE FILES FROM GITHUB UNLESS YOU KNOW WHAT YOU ARE DOING. (See below.)
GNU General Public License v2.0
2.69k stars 659 forks source link

fftw hangs on raspberry pi3 #122

Open soundart opened 6 years ago

soundart commented 6 years ago

Currently fftw does not work on my raspberry pi3. It hangs in a loop doing calls to clock_gettime:

clock_gettime(CLOCK_SGI_CYCLE, 0x7ea42558) = -1 EINVAL (Invalid argument)
clock_gettime(CLOCK_SGI_CYCLE, 0x7ea42558) = -1 EINVAL (Invalid argument)
clock_gettime(CLOCK_REALTIME, {tv_sec=1513978172, tv_nsec=339522337}) = 0
clock_gettime(CLOCK_REALTIME, {tv_sec=1513978172, tv_nsec=339672025}) = 0
clock_gettime(CLOCK_SGI_CYCLE, 0x7ea42558) = -1 EINVAL (Invalid argument)

The call clock_gettime(CLOCK_SGI_CYCLE, &t) from function getticks() fails with EINVAL. See : http://elixir.free-electrons.com/linux/latest/source/include/uapi/linux/time.h#L62 - "The driver implementing this got removed. The clock ID is kept as a place holder. Do not reuse!"

There was a commit preventing the usage of CLOCK_SGI_CYCLE on ANDROID. It should probably not be used on plain linux too.

I discussed this here: https://github.com/FFTW/fftw3/commit/950b153910f7f0dde9cc20cddeee5dc9048d25b7

I will add a pull request based on https://github.com/SETIguy comment https://github.com/FFTW/fftw3/commit/950b153910f7f0dde9cc20cddeee5dc9048d25b7#commitcomment-26583436

soundart commented 6 years ago

See https://github.com/FFTW/fftw3/pull/123