uber-archive/pyflame

Kernel version less than 3.4 support

ssskip opened this issue · 5 comments

Hi, Thanks for developing pyflame, if it possible to add support on kernel version less than 3.4?

PTRACE_SEIZE/PTRACE_INTERRUPT (since Linux 3.4)

Hi @ssskip,

The original version of Pyflame didn't use PTRACE_SEIZE, seizing was added by commit 143144a . The last version that did not use PTRACE_SEIZE can be fetched using the git tag v1.5.2. I am going to leave this issue open because I think that Pyflame should be able to work without PTRACE_SEIZE, but in the meantime can you try v1.5.2?

@eklitzke thanks for your update, so if i use pt_attach version,it’s not possible to do a runtime prof on long running python process,right?

since

Unlike PTRACE_ATTACH, PTRACE_SEIZE does not stop the process.

@eklitzke BTW, I think append kernel version build check can be helpful for people try to compile
pyflame on unsupport version.

I believe this can be done as a check in configure.ac using an AC_COMPILE_IFELSE check. Kind of hard for me to test since I don't have any kernels that old. A PR would be welcome.

This is also a blocker for getting newer version into conda-forge: conda-forge/staged-recipes#6601