Pausar um processo com -SIGSTOP por tempo suficiente faz com que o Kernel Oops Stack Overflow

3

Estou executando o processo mpg321 em um Raspberry Pi 2. mpg321 reproduz .mp3 arquivos e para pausar a música, tenho uma tecla de atalho que insere sudo kill -SIGSTOP [pid of mpg321] . Isso funciona muito bem, exceto quando deixo minha música pausada por mais de uma hora, depois recebo um kernel Oops e, eventualmente, um kernel em pânico depois que tento descompactar a música.

O kernel Oops é:

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
     kernel:[91001.596603] Internal error: Oops: 5 [#2] PREEMPT SMP ARM

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91001.902975] Process mpg321 (pid: 11096, stack limit = 0xb220a210)

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91001.918095] Stack: (0xb220bdb8 to 0xb220c000)

O que é imediatamente seguido por este pânico do kernel:

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91001.931470] bda0:                                                       00000000 00000000

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91001.957205] bdc0: 7f130b94 802ff67c 802ff660 75e50000 b1e68170 b9190d10 000006e8 00000000

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91001.982913] bde0: 00000000 00000048 00000080 00000000 00000000 000003af b2140000 75e50000

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.009496] be00: b9190d10 00000054 ba6bbaa4 00000046 b220bea4 b220be20 8011e260 800f3394

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.036241] be20: 00000000 00000000 00000000 00000000 00000055 00000000 00000000 75e50000

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.062953] be40: 00000000 b2612000 00000140 00000040 00000050 00000054 001d58f0 00000054

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.089652] be60: 00000046 75e50000 b220bebc b220be78 00000055 b2612140 00000000 b220bfb0

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.116838] be80: 00000017 75e50018 b9153a40 b9242400 b9153a78 00000054 b220befc b220bea8

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.144590] bea0: 8055eca0 8011dadc 001d58f0 b68ae490 b220bef4 b220bec0 7f132c7c 7f131ec8

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.173009] bec0: b220befc 00000000 00000000 00000480 00000000 00000017 8055e9c8 75e50018

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.202002] bee0: 8080209c b220bfb0 7e9dc9fa 00000000 b220bfac b220bf00 800091e4 8055e9d4

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.231728] bf00: 801566cc 7f132f44 00000000 807e1900 b220bf3c 807e1900 807d8330 3978c000

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.261788] bf20: 60000193 00000000 00000000 00192c44 b220bf5c b220bf40 800764bc 800d0794

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.292131] bf40: 00000000 807dac74 00000000 00000000 b220bf74 b92c9c00 b92c9c00 c0844123

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.322942] bf60: 001d58f0 00000006 001d5788 001d57d8 001d5788 001d57d8 000208ac 00000036

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.354633] bf80: 00000000 b220bf90 76e2d6cc 76e2d6cc 60000010 ffffffff 10c5387d 10c5387d

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.386365] bfa0: 00000000 b220bfb0 8055e524 800091ac 7e9dca78 00000020 75e50018 7e9dca78

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.418132] bfc0: 0018f264 7e9dca34 00000000 7e9dca37 00000002 7e9dc9fa 00000000 7e9dc97e

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.449906] bfe0: 00000008 7e9dc944 76e35024 76e2d6cc 60000010 ffffffff 00000000 00000000

Message from syslogd@raspberrypi at Jan 30 22:43:45 ...
 kernel:[91002.720458] Code: e3160003 1a000063 f57ff05b f593f000 (e1932f9f)

O que está acontecendo aqui? Não tenho certeza de como pausar um processo pode causar isso. Eu só preciso saber o que o kernel Oops e o pânico significam exatamente, mas se alguém souber como corrigi-lo também, seria muito apreciado.

    
por Patrick Cook 31.01.2016 / 05:59

1 resposta

0

De acordo com a pesquisa rápida na Internet, todas as ocorrências do SMP ARM são resultados de falhas de página na memória virtual. Eu não sou um especialista, mas talvez seu aplicativo vaze memória enquanto pausado. Gostaria de verificar o consumo de memória do processo usando ps . Consulte as man pages para obter os ps sinalizadores apropriados para o uso do processo de memória virtual e real. Eu comentaria esta mensagem se pudesse.

    
por 31.01.2016 / 21:07