O que significa "clocksource tsc unstable"?


10

Sempre que vejo a inicialização do Linux, vejo esta mensagem:

origem do relógio tsc instável (delta = NNNNNNNN ns)

onde NNNNNNNN é um número muito grande que pode ser positivo ou negativo.

O que essa mensagem significa? Devo me preocupar com isso?


Eu acho que tscse refere ao contador de carimbo de data / hora . Se isso ajudar.
Der Hochstapler

Além disso, dado o que eu acho on-line sobre essa mensagem, você a vê em uma máquina física ou virtual. Parece que isso é relevante.
Der Hochstapler

Físico e virtual. Recebo essa mensagem em vários sistemas diferentes quando inicializo o Linux neles.
bwDraco

Recebi exatamente essa mensagem /var/log/messagequando adicionei as opções "acpi = off" ao /etc/grub.conf(como kernel=opção). Quando o removi, reiniciei, a mensagem desapareceu. CentOS 6 com Kernel: .6.32-279.19.1.el6.x86_64

Respostas:


8

Sinceramente, vejo esta mensagem pela primeira vez hoje e não tenho idéia do que ela realmente significa.

Dito isto, li o artigo da Wikipedia no contador do carimbo de data / hora (que é o que está tscna mensagem de erro). O artigo menciona um problema com o TSC no segundo parágrafo:

Até recentemente, o contador de registro de data e hora era uma excelente maneira de obter informações de tempo da CPU, de alta resolução e baixa sobrecarga. Com o advento de CPUs com vários núcleos / hyperthread, sistemas com várias CPUs e sistemas operacionais "hibernando", o TSC não pode ser invocado para fornecer resultados precisos- a menos que seja tomado muito cuidado para corrigir as possíveis falhas: taxa de tick e se todos os núcleos (processadores) têm valores idênticos em seus registros de registro de horas. Não há promessa de que os contadores de data e hora de várias CPUs em uma única placa-mãe sejam sincronizados. Nesses casos, os programadores só podem obter resultados confiáveis ​​bloqueando seu código em uma única CPU. Mesmo assim, a velocidade da CPU pode mudar devido a medidas de economia de energia tomadas pelo sistema operacional ou BIOS, ou o sistema pode ser hibernado e reiniciado mais tarde (redefinindo o contador de carimbo de data / hora). Nesses últimos casos, para permanecer relevante, o contador deve ser recalibrado periodicamente (de acordo com a resolução de tempo exigida por sua inscrição).

Em resumo, em sistemas modernos, o TSC é uma droga para medir o tempo com precisão . E é isso que a mensagem está dizendo. No seu sistema, o TSC não é uma fonte de tempo estável.

O deltaobservado, eu diria, é o delta de tempo relatado entre dois ticks do TSC. Ou seja, toda vez que o TSC conta 1, os NNNNNNNNNnanossegundos passam. Então, é assim que você costuma manter um tempo muito preciso.

O kernel do linux terá verificado essa frequência várias vezes (para determinar se a fonte é estável) e obteve resultados diferentes. Assim, a mensagem.


Então, você precisa se preocupar?
Sinceramente, não sei. Na minha opinião, esse problema surge do fato de os processos serem "movidos" entre os núcleos (todos os núcleos podem ter uma frequência TSC diferente) ou um núcleo alterando sua frequência (como na economia de energia).

Provavelmente, a mensagem é impressa apenas porque o kernel detectou esse problema por si próprio e agora será ajustado de acordo.

E, pelo que li nas fontes do kernel ( arch/x86/kernel/tsc.c), não acho que estou muito longe com minhas suposições.

Duvido que a mensagem signifique uma condição crítica. E baseio-me na suposição de que você já deveria saber se isso fosse crítico.


2
Citando o mesmo artigo, algumas CPUs modernas também fornecem um Contador de Carimbo de Tempo constante : Os processadores Intel recentes incluem um TSC de taxa constante (identificado pelo sinalizador constant_tsc em / proc / cpuinfo do Linux). Com esses processadores, o TSC lê a taxa máxima do processador, independentemente da taxa real de execução da CPU.
Scai

Você recomenda usar o hpet em vez do tsc?
CMCDragonkai

11
Gostaria apenas de adicionar informações. Que hoje eu enfrentei esse problema em um dos nossos servidores supermicro. O SO é RHEL 6.5 e está dando a mesma mensagem. E este servidor está rastreando no ritmo do caracol agora. Já passou uma hora e a inicialização ainda não foi concluída. Meu próximo passo será alterar o contador e adicionar informações no arquivo grub.conf, entrando no modo de recuperação. Como o modo de usuário único também não está funcionando
OmiPenguin
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.