php5 fpm: como você gera o core dump do segfault?

2

Sob carga, meu PHP5-fpm (no 32bit ubuntu 10.10) produz segfaults como o seguinte:

kernel: [4881937.884863] php5-fpm[2638]: segfault at 4204eb41 ip 0832d235 sp bfcea5e0 error 4 in php5-fpm[8048000+70d000]

Como faço para que esses segfaults produzam um dump principal para que eu possa inspecionar a pilha de chamadas para descobrir de onde o segfault está vindo?

Para onde vão os despejos quando eles são produzidos?

    
por rynop 25.08.2011 / 17:33

1 resposta

12

Você pode ativar o despejo principal com:

su -
echo '/tmp/core-%e.%p' > /proc/sys/kernel/core_pattern
echo 0 > /proc/sys/kernel/core_uses_pid
ulimit -c unlimited

Defina a diretiva rlimit_core em /etc/php-fpm.d/www.conf para ilimitado:

rlimit_core = unlimited
    
por 25.08.2011 / 17:48