modprobe amd-rng falha, nenhum desses dispositivos

1

Ao tentar instalar o hw_random em um kernel 2.6, o modprobe retorna um erro FATAL "No such device" no CentOS 5.7 e no Fedora 15. Ambos estão usando o kernel mais recente, respectivamente.

O arquivo .ko existe e config- contém CONFIG_RTC = y e CONFIG_CRYPTO_RNG = m

Ambos os servidores são processadores AMD x86_64.

Os únicos resultados do Google são muito antigos, muitas vezes fazem referência ao módulo do kernel 'hw_random' (que foi substituído por módulos específicos do processador e não oferece muita ajuda.

Alguém conseguiu instalar o hw_random? Estou faltando uma etapa ao instalar o módulo?

Editar:

Fedora 15

/lib/modules/2.6.40.6-0.fc15.x86_64/kernel/drivers/char/hw_random/amd-rng.ko

# uname -r

2.6.40.6-0.fc15.x86_64

# modprobe -v amd-rng

insmod /lib/modules/2.6.40.6-0.fc15.x86_64/kernel/drivers/char/hw_random/amd-rng.ko

FATAL: Erro ao inserir o amd_rng (/lib/modules/2.6.40.6-0.fc15.x86_64/kernel/drivers/char/hw_random/amd-rng.ko): Nenhum desses dispositivos

CentOS 5.7

/lib/modules/2.6.18-274.7.1.el5/kernel/drivers/char/hw_random/amd-rng.ko

# uname -r

2.6.18-274.7.1.el5

# modprobe -v amd-rng

insmod /lib/modules/2.6.18-274.7.1.el5/kernel/drivers/char/hw_random/amd-rng.ko

FATAL: Erro ao inserir o amd_rng (/lib/modules/2.6.18-274.7.1.el5/kernel/drivers/char/hw_random/amd-rng.ko): Nenhum desses dispositivos

    
por CrackerJack9 16.11.2011 / 02:30

1 resposta

3

"Nenhum dispositivo desse tipo", como "seu computador não tem o dispositivo de hardware necessário".

Veja o código-fonte do Linux em amd-rng.c para PCI_VDEVICE (AMD, ...) para ver o fornecedor do PCI e os números dos dispositivos.

Como exemplo, o amd-rng.c pode conter:

/*
 * Data for PCI driver interface
 *
 * This data only exists for exporting the supported
 * PCI ids via MODULE_DEVICE_TABLE.  We do not actually
 * register a pci_driver, because someone else might one day
 * want to register another driver on the same PCI id.
 */
static const struct pci_device_id pci_tbl[] = {
        { PCI_VDEVICE(AMD, 0x7443), 0, },
        { PCI_VDEVICE(AMD, 0x746b), 0, },
        { 0, }, /* terminate list */
};

Aqueles se traduzem em:

vendor: 1022 ("Advanced Micro Devices [AMD]"), device: 7443 ("AMD-768 [Opus] ACPI")
vendor: 1022 ("Advanced Micro Devices [AMD]"), device: 746b ("AMD-8111 ACPI")

Usar lscpi -vnn mostrará quais dispositivos PCI você possui. Você precisa ver 1022:7443 ou 1022:746b .

    
por 26.03.2013 / 20:44