O kernel do Linux trava em 'Mudando para clocksource tsc "no Pentium 4

11

Hardware: Dell Dimension 4500S : i845G, Pentium 4, estoque + 2 GB de RAM e atualização de BIOS mais recente (cerca de 2002).

Eu tenho construído um sistema Linux a partir do código-fonte, até agora ele é LFS 7.0 pelo livro. O primeiro kernel que eu criei funciona bem, mas tem um monte de fluff e bloat, então agora estou otimizando o kernel para o meu hardware alvo (veja acima).

Minha tentativa mais recente de configuração, e várias variações de tentativa e erro, foram continuamente interrompidas na declaração printk "Switching to clocksource tsc". Meu "bom" kernel nunca teve um problema ... esta é a versão 3.1.0 btw. Ambos estão sendo construídos a partir da mesma árvore de origem, sem patches, make mrproper , make menuconfig , etc, então, obviamente, estou perdendo a chave CONFIG_XXX flag.

Estou encarando esse problema há mais de um dia e desenvolvi o kernel que sabe quantas vezes, mas sem sucesso.

Uma coisa que acho interessante é com o bom kernel que recebo:

# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

também, pode ser útil saber ...

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc acpi_pm

Eu tentei a configuração de compilação com várias opções, mas neste momento não me lembro de nenhum detalhe, então, por favor, não pergunte. Da minha pesquisa eu encontrei e testei vários parâmetros do kernel, como clocksource=pit e notsc , mas todos eles também falharam. Mais uma vez, eu gostaria de ter escrito tudo o que tentei até agora, retrospectiva ...

A maioria dos exemplos de fórum são para os kernels 2.x e foram resolvidos com alguma variação das opções de boot, mas meu bom kernel usa apenas root=/dev/sdaX ro . Então eu sei que eu sou de ouro com essa combinação de hardware e kernel 3.1.0, se eu puder encontrar a configuração de compilação correta.

Além disso, a maioria das pessoas que postaram um problema semelhante diz que, após alguns minutos, o sistema continuará carregando e tudo ficará agradável. Eu deixei isso ocioso por tempo suficiente para cozinhar o jantar e ele ainda não voltou a carregar.

Espero que um de vocês, guru, leia isso e diga: "Ei, eu acabei de configurar CONFIG_XXX = y no meu dinossauro P4 e funcionou muito bem." :)

Deixe-me saber o que você precisa de mim para testar ou verificar. Terei prazer em postar os resultados.

    
por rfmodulator 16.01.2012 / 08:28

4 respostas

8

A partir de uma pesquisa rápida, este problema parece ter muitas razões possíveis, e parece apontar para o fato de que o padrão do seu novo kernel para o clock-source está errado para a sua placa-mãe.

Um conselho que funcionou para alguns foi usar clocksource=hpet ou clocksource=acpi_pm .

Em outro tópico , alguém corrigiu isso com clocksource=jiffies , outro aconselhou tente noapic ou nolapic , outro para desligar o acpi na BIOS, e outro ainda culpou o touchpad Synaptics e corrigiu seu problema apagando o Xorg.conf.

Um construtor de kernel resolveu seu problema recompilando o initrd sem o fbcondecor.

Espero que isso ajude, pois parece que esse problema pode ter muitas causas.

    
por 21.01.2012 / 19:53
0

Eu tenho exatamente o mesmo problema aqui e leio muito. @harrymc fez um bom resumo.

Eu adicionarei apenas duas coisas que aprendi em minha pesquisa:

  • O problema vem do seu kernel Linux, que não sabe como lidar com o processador, porque não consegue descobrir qual é o seu clock de processamento. Você pode observar isso clicando no log de inicialização do kernel. Parece que o kernel está tentando medir seu relógio de processamento (para mim era como "2997.1333", mas cada inicialização mudava para "2997.1445", "2997.1379", ...).

  • Depois de tentar muitas coisas, finalmente cheguei e descobri o BIOS. O meu é GYGABITE UEFI. Defino os parâmetros de volta para "Configurações padrão otimizadas" e defino "Intel Virtualization Technology" como "enabled".

Agora, tudo voltou ao normal para mim! Espera que isso ajude.

    
por 06.02.2014 / 17:56
0

Alguns centavos de mim, não tenho certeza se é algo comum ou não, mas consegui fazer o Ubuntu funcionar desativando o 'timer de alta precisão' no BIOS. Meu mb é gigabyte z77x-d3h

    
por 15.06.2015 / 20:51
-2

Eu consertei o problema adicionando o seguinte kernelparameter:

noapic
    
por 03.07.2018 / 01:02