A solução é encontrada.
O problema foi com o core_pattern, pois meu programa de alguma forma mudou seu cwd para /
e, portanto, não pode escrever nada na raiz do sistema de arquivos.
O processo cwd pode ser visto em /proc/<pid>/cwd
.
Então, eu mudei o core_pattern com echo '/tmp/core.%p' > /proc/sys/kernel/core_pattern
e isso ajudou.