[FUG-BR] Fatal trap 12: page fault while in kernel mode [SOLVED] (16 meses depois)

Cleyton Agapito cragapito em gmail.com
Domingo Fevereiro 2 21:04:04 BRST 2014


Olá Caríssimos!

É com muito prazer que compartilho com os senhores e senhoras um
probleminha encardido que vinha me perturbando deste setembro de 2012,
"Fatal trap 12: page
 fault while in kernel mode", abaixo vou contar a historinha, no
último parágrafo a solução.

Eu poderia ficar o dia inteiro lendo notícias, programando que não
dava nada, esporadicamente o sistema panicava, vendo vídeo, baixando
torrents, copiando
grandes arquivos (mesmo em modo solteiro [single]), nada coerente,
consegui modelar a cabeça de um soldado imperial inteira no blender e
de vez em quando ao
renderizar panicava, não em todas. Compilar o kernel/userland também,
de vez em quando ia tudo, de vez em quando parava (compilei a 8.2,
9.1, 9.2 e 10, cheguei à conclusão que
não era a versão, hehe). Para ajudar tinham alguns reboots causados
por inconsistências devido às constantes panes que só tornavam o
problema mais nebuloso, ocorriam panes
até em idle, sinistro. Os dumps vinham como se tivesse vazado bit pra
todo lado,
números absurdos nos mbufs, interfaces de rede e nos indicadores de paginação,
esse até faz sentido já que a falha é de paginação, mas um não tinha
nada a ver com outro,
pareciam que vinham de máquinas diferentes.

A Primeira suspeita é a memória, passei o memtest86+ diversas vezes e
não apontava nada. Reinstalei todos os kernel drivers de diversas
versões possíves e imagináveis
(graças ao svn) e nada. As temperaturas dos processadores central,
gráfico e da placa mãe
normais, coloquei uma fonte nova de 400 velas e também não resolveu,
desliguei journal,
softupdates (esse doeu porque leva uma vida pra verificar um slice de
1G!). Suspeitei do disco SATA2 na interface SATA1 e de algum binário
corrompído (tenho cerca de 2800 ports
compilados e nem todos estão atualizados), então reinstalei o 10R em
um disco IDE velho
que tinha aqui e fui reconstruindo o sistema com binários, o
windowmaker e o xosview nem
abrem dão 11 direto (é só abrir, pelo menos sem pane), mas ao ver
flash no firefox, pane,
reiniciar, pane denovo, gqview, pane. Não era software.

Aqui em Curitiba chegou o armagedom, e com isso as panes ficaram mais
frequentes, mesmo com tudo limpinho e brilhante. Percebi que de vez em
quando o X dava
 sinal 6 e outras 10 (bus error!), descobri que quem throlla esse
sinal é o processador,
que andava a não mais que 60°C a todo o vapor. Suspeitei de algum
problema na ponte
norte, então baixei a velocidade do barramento frontal (FSB) para
100MHz (que era o
mínimo que dava) e as panes pararam! Estressei ele bastante e não
ocorreu nenhuma pane,
até não foi difícil porque ele tava uma lesma mesmo e para ir a 2.5 de
carga não precisava
muito.

No notebook do trampo o cooler estava entupido de poeira e até
descobrir como desmontava aquela bomba (um HP6515b, no youtube tem a
manha de um parafuseco escondido) eu baixava o clock pra não derreter
tudo enquanto procurava no google, então o diagnóstico de temperatura
(ainda mais em dias quentes) estava valendo, mas nenhum dos sensores
apontava anormalidade em casa.

Resolvi então desmontar o dissipador da ponte norte (PM4800CE) e tive
a surpresa. Até tinha uma camada de pasta no dissipador mas só deixou
marca nas bordas de plástico
do chip, a moeda central (que é de metal) estava sem uma mancha de
pasta! Nem sei
como durou tanto tempo (ela já tem 7 anos). Melequei tudo de pasta, me
empolguei e soquei na placa de video também (o que não foi uma boa
ideia porque lá é aquela fita térmica que não sai, mas ficou toda
lambuzada também). Ou seja, os sensores da placa
mãe não pegam esse defeito, os programas de benchmark não conseguem esquentá-lo
o suficiente e os coredumps não dizem na da de relevante. É de perder
os cabelos.

Se algum gringo tiver tendo esse problema também e por infelicidade
encontrar isso e não entender nada, vai aqui resumidamente em outras
palavras:

Overheating at the Northbridge, lack of thermal paste under the sink
generating random
page faults even under the normal conditions in the sensors and
aproval of the smartd,
memtest and bonnie. That is a tip.

Abração à todos.


Mais detalhes sobre a lista de discussão freebsd