[FUG-BR] lock order reversal

Otacílio otacilio.neto em bsd.com.br
Segunda Outubro 12 12:07:54 BRT 2015


Em 12/10/2015 11:54, Luiz Otavio O Souza escreveu:
> On 9 October 2015 at 08:44, Otacílio wrote:
>> Caros
>>
>> Gerei uma imagem para a minha beaglebone utilizando o crochet. Só que de vez
>> em quando eu recebo uma mensagem de lock order reversal como a seguinte:
>>
>> lock order reversal:
>>   1st 0xcd363f50 bufwait (bufwait) @ /src/FreeBSD/sys/kern/vfs_bio.c:3344
>>   2nd 0xc3224400 dirhash (dirhash) @
>> /src/FreeBSD/sys/ufs/ufs/ufs_dirhash.c:281
>> KDB: stack backtrace:
>> lock order reversal:
>>   1st 0xcd363f50 bufwait (bufwait) @ /src/FreeBSD/sys/kern/vfs_bio.c:3344
>>   2nd 0xc0842e68 kernel linker (kernel linker) @
>> /src/FreeBSD/sys/kern/kern_linke r.c:552
>> KDB: stack backtrace:
>> db_trace_self() at db_trace_self
>>           pc = 0xc062ddb0  lr = 0xc0242ff8 (db_trace_self_wrapper+0x30)
>>           sp = 0xdd1b6580  fp = 0xdd1b6698
>> db_trace_self_wrapper() at db_trace_self_wrapper+0x30
>>
>> Do que eu pesquisei na Internet encontrei essa descrição
>>
>> https://www.freebsd.org/doc/faq/troubleshoot.html#idp59178576
>>
>> de que é uma mensagem de um framework informando que um deadlock pode ter
>> acontecido. Eu gostaria que alguém me dissesse se preciso ficar preocupado
>> com isso e, caso não, qual o caminho das pedras para o arquivo de
>> configuração do Kernel que o crochet usa para a beaglebone para que eu possa
>> desativar isso lá.
>>
> Otacilio,
>
> Não necessariamente esse aviso quer dizer que um deadlock pode ter
> acontecido, mas sim que ele 'poderia' acontecer:
>
> It is possible to get false positives, as witness(4) is conservative.
> A true positive report does not mean that a system is dead-locked;
> instead it should be understood as a warning that a deadlock could
> have happened here.
>
> Alguns desses warnings não representam um problema (falso positivos).
>
> Você não precisa se preocupar com isso, isso é normal no -current (os warnings).
>
> Desabilite as opções de debug no kernel e você não vera mais esses
> warnings (além de obter uma performance muito melhor).
>
> Para isso comente as seguintes opções no arquivo de configuração do kernel:
>
> options         INVARIANTS              # Enable calls of extra sanity checking
> options         INVARIANT_SUPPORT       # Extra sanity checks of
> internal structures, required by INVARIANTS
> options         WITNESS                 # Enable checks to detect
> deadlocks and cycles
> options         WITNESS_SKIPSPIN        # Don't run witness on
> spinlocks for speed
>
> Luiz
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

Veleu Luiz, eu havia entendido que isso não era necessariamente ruim. 
Agora estou pegando uns kernel panic reais enquanto compilo os 
aplicativos por meio do port. Estou achando que é algum problema do 
driver do sdcard. Quando acontecer novamente posto aqui para vocês 
verem. Obrigado pelas dicas de como desabilitar as mensagens.

[]'s
-Otacílio


Mais detalhes sobre a lista de discussão freebsd