Uso da CPU por módulos do kernel, regras de roteamento e encaminhamento

1

Eu tenho um sistema com um módulo de kernel de loopback instalado. Através de várias regras de roteamento e iptable, os pacotes que saem da interface de loopback são enviados por um túnel ipsec. Eu estou vendo que sob carga, o kernel entra em pânico ou despeja um monte de mensagens que dizem "BUG: soft lockup - CPU # 0 preso por X segundos".

O rastreamento de pilha está sempre em uma função de criptografia, como crypto_cbc_encrypt ou des3_ede_encrypt. Há muito tráfego passando pelos túneis ipsec e o sistema está gastando muito tempo na criptografia + descriptografia.

Minha preocupação é que sempre é a CPU 0. Como posso garantir que outras CPUs também compartilhem a carga de criptografia. Eu tenho visto, por vezes, quando o segmento ksoftirq0 está em 100%. Mais uma vez, é sempre cpu0. Isso acontece principalmente quando os pacotes estão sendo encaminhados pela interface de loopback, passam pelas regras xfrm e entram nos túneis.

Como eu também verifico a máscara da CPU para o módulo de kernel de loopback? Existe tal coisa?

    
por skp 29.05.2014 / 04:27

0 respostas