kernel

1. kernel

David Jagr
jagr

(usa Slackware)

Enviado em 07/12/2007 - 00:28h

Existe algum meio de atualizar o kernel sem ser compilando no Slack 12. Como por exemplo instalar pacotes tgz. Se sim, onde e qual pacotes devo baixar?


  


2. Re: kernel

Leandro Santiago
tenchi

(usa Slackware)

Enviado em 07/12/2007 - 01:02h

Normalmente na pasta extra/ do DVD ou CD de instalação tem todos estes pacotes que você quer, já pré-compilados.
Ou então em algum mirror do slackware, na pasta current/ , que contém sempre a última versão estável do kernel ;-)
Acho que já deve ser a 2.6.23 ou 24.


3. Re: kernel

David Jagr
jagr

(usa Slackware)

Enviado em 07/12/2007 - 02:43h

Consegui autalizar o kernel, porém só consigo usar o Sistema com o novo kernel em modo de texto. Ao tentar instalar o driver da minha Gforce esse erro ocorre:

ERROR: Unable to build the NVIDIA kernel module.

Esse mesmo erro ocorreu quando tentei usar outros kerneis da serie 2.6.21.5 no Slack. Só consigo usar o hugesmp.s Porém na série 2.6.23.9 estava usando o hugesmp.s e o erro voltou a ocorrer.

Em /boot o vmlinuz, System.map e config estavam linkados no novo kernel. Em /usr/src o linux também estava linkado em linux-2.6.23.9 e em /etc/rc.d o rc.modules foi linkado em rc.modules-2.6.23.9-smp.

Devo dizer que também atualizei o lilo.

O que devo fazer? Desinstalar o driver da placa de vídeo e voltar a instalar? Se for isso não sei como proceder, pois não encontrei a instalação da placa em /var/log/packages.

Será que devo realizar mais alguma configuração?

Por enquanto tenho vou usando o kernel 2.6.21.5.

Agradeço qualquer ajuda.


4. Re: kernel

Leandro Santiago
tenchi

(usa Slackware)

Enviado em 07/12/2007 - 10:10h

Hum... eu, quando instalo umnovo kernel, manteho os dois - ou mais - acessíveis pelo lilo, pela modificação do arquivo /etc/lilo.conf.

Mas no seu caso o upgrade deve ter funcionado, já que conseguiu logar.
Com relação ao driver da nvidia, simplesmente execute o instalador novamente. Isso fará o driver ser deinstalado do kernel antigo e instalado de novo, para o kernel atual. Ah, e o instalador irá perguntar cada ação a ser executada.

Eu faço umas gambiarras aqui e mantenho a minha placa de vídeo (também uma nvidia) funcionando nos dois kernels.

Teste aí e veja se funciona.

Flw.


5. Re: kernel

David Jagr
jagr

(usa Slackware)

Enviado em 07/12/2007 - 11:50h

Então tenchi, eu fiz isso, rodei o instalador e deu o erro que mencionei acima, algo relacionado com os modulos do novo kernel.

Valeu pela atenção tenchi.


6. kernel

Edwal F. Paiva Filho
nicolo

(usa Ubuntu)

Enviado em 07/12/2007 - 16:03h

O novo kernel não vai funcionar se você não reinstalar, ou recomplilar os módulos para a mesma versão.
Verifique nas mensagens de boot se os módulos não estão sendo recusados a carregar.

A instalação do driver de video precisa ter o fonte /usr/src/linux com a mesma versão do kernel que está rodando, porque ele recompila os módulos.
Outra possibilidade é que o seu gcc está com versão diferente da que foi usada para recompilar o kernel, aí eu não sei com resolver, a menos que você reinstale o gcc para a mesma versão que compilou o kernel rodante.

Se nada der certo é melhor recompilar, se é que isso vai funcionar agora.
A instrução é fácil e tem aqui no VOL um artigo.
Mas se você usa grub é melhor recompilar a la debian.É quase igual, tem um passo a mais.
Boa sorte





7. Re: kernel

David Jagr
jagr

(usa Slackware)

Enviado em 07/12/2007 - 22:26h

Nicolo, eu instalei os modulos, para ser mais exato kernel-module-smp-2.6.23.9. Aliais, eu instalei todos pacotes de kerneis disponiveis no slack.it. O problema é só com o driver da placa de vídeo.

Lembrando, eu consigo usar o SO com o novo kernel mas só em modo de texto pois não consigo instalar o driver da placa de video.

Obrigdao pela ajuda Nicolo.


8. Log de instalação

Paulo Sergio Travaglia
pstglia

(usa Slackware)

Enviado em 07/12/2007 - 22:36h

Você já verificou o log do instalador da NVIDIA
( /var/log/nvidia-installer.log )?

O motivo do erro pode ter sido registrado de forma mais detalhada nele.




9. Re: kernel

David Jagr
jagr

(usa Slackware)

Enviado em 07/12/2007 - 22:43h

Aqui está o log do nvidia-instaler. Como não entendi patavinas estou postando.


nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Fri Dec 7 17:38:05 2007

option status:
license pre-accepted : false
update : false
force update : false
expert : false
uninstall : false
driver info : false
precompiled interfaces : true
no ncurses color : false
query latest version : false
OpenGL header files : true
no questions : false
silent : false
no recursion : false
no backup : false
kernel module only : false
sanity : false
add this kernel : false
no runlevel check : false
no network : false
no ABI note : false
no RPMs : false
no kernel module : false
force SELinux : default
no X server check : false
force tls : (not specified)
X install prefix : (not specified)
X library install path : (not specified)
X module install path : (not specified)
OpenGL install prefix : (not specified)
OpenGL install libdir : (not specified)
utility install prefix : (not specified)
utility install libdir : (not specified)
doc install prefix : (not specified)
kernel name : (not specified)
kernel include path : (not specified)
kernel source path : (not specified)
kernel output path : (not specified)
kernel install path : (not specified)
proc mount point : /proc
ui : (not specified)
tmpdir : /tmp
ftp mirror : ftp://download.nvidia.com
RPM file list : (not specified)

Using: nvidia-installer ncurses user interface
-> License accepted.
-> There appears to already be a driver installed on your system (version: 1.0-
9755). As part of installing this driver (version: 1.0-9755), the existing
driver will be uninstalled. Are you sure you want to continue? ('no' will a
bort installation) (Answer: Yes)
-> No precompiled kernel interface was found to match your kernel; would you li
ke the installer to attempt to download a kernel interface for your kernel f
rom the NVIDIA ftp site (ftp://download.nvidia.com)? (Answer: No)
-> No precompiled kernel interface was found to match your kernel; this means
that the installer will need to compile a new kernel interface.
-> Performing CC sanity check with CC="cc".
-> Performing CC version check with CC="cc".
-> Kernel source path: '/lib/modules/2.6.23.9-smp/source'
-> Kernel output path: '/lib/modules/2.6.23.9-smp/build'
-> Performing rivafb check.
-> Performing nvidiafb check.
-> Performing Xen check.
-> Cleaning kernel module build directory.
executing: 'cd ./usr/src/nv; make clean'...
rm -f -f nv.o nv-vm.o os-agp.o os-interface.o os-registry.o nv-i2c.o nv.o nv
-vm.o os-agp.o os-interface.o os-registry.o nv-i2c.o nvidia.mod.o
rm -f -f build-in.o nv-linux.o *.d .*.{cmd,flags}
rm -f -f nvidia.{o,ko,mod.{o,c}} nv_compiler.h *~
rm -f -f stprof stprof.o symtab.h Modules.symvers
rm -f -rf .tmp_versions
rm -f Makefile
-> Building kernel module:
executing: 'cd ./usr/src/nv; make module SYSSRC=/lib/modules/2.6.23.9-smp/so
urce SYSOUT=/lib/modules/2.6.23.9-smp/build'...
sh ./conftest.sh "cc" "cc" /lib/modules/2.6.23.9-smp/source /lib/modules/2.6
.23.9-smp/build cc_sanity_check full_output
sh ./conftest.sh "cc" "cc" /lib/modules/2.6.23.9-smp/source /lib/modules/2.6
.23.9-smp/build select_makefile full_output
make --no-print-directory -f Makefile module

NVIDIA: calling KBUILD...
make CC=cc KBUILD_OUTPUT=/lib/modules/2.6.23.9-smp/build KBUILD_VERBOSE=1 -C
/lib/modules/2.6.23.9-smp/source SUBDIRS=/tmp/selfgz3323/NVIDIA-Linux-x86-1.
0-9755-pkg1/usr/src/nv modules
make -C /lib/modules/2.6.23.9-smp/build \
KBUILD_SRC=/usr/src/linux-2.6.23.9 \
KBUILD_EXTMOD="/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv" -
f /usr/src/linux-2.6.23.9/Makefile modules
test -e include/linux/autoconf.h -a -e include/config/auto.conf || ( \
echo; \
echo " ERROR: Kernel configuration is invalid."; \
echo " include/linux/autoconf.h or include/config/auto.conf are mis
sing."; \
echo " Run 'make oldconfig && make prepare' on kernel src to fix it
."; \
echo; \
/bin/false)
mkdir -p /tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/.tmp_vers
ions
rm -f /tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/.tmp_version
s/*
make -f /usr/src/linux-2.6.23.9/scripts/Makefile.build obj=/tmp/selfgz3323/N
VIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv
echo \#define NV_COMPILER \"`cc -v 2>&1 | tail -n 1`\" > /tmp/selfgz3323/NVI
DIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv_compiler.h
cc -Wp,-MD,/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/.nv.o
.d -nostdinc -isystem /usr/lib/gcc/i486-slackware-linux/4.1.2/include -D__K
ERNEL__ -Iinclude -Iinclude2 -I/usr/src/linux-2.6.23.9/include -include incl
ude/linux/autoconf.h -I/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/s
rc/nv -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing
-fno-common -Werror-implicit-function-declaration -O2 -pipe -msoft-float -mr
egparm=3 -freg-struct-return -mpreferred-stack-boundary=2 -march=i686 -mtune
=i686 -ffreestanding -maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG
_AS_CFI_SIGNAL_FRAME=1 -I/usr/src/linux-2.6.23.9/include/asm-i386/mach-defau
lt -Iinclude/asm-i386/mach-default -fomit-frame-pointer -fno-stack-protector
-Wdeclaration-after-statement -Wno-pointer-sign -I/tmp/selfgz3323/NVIDIA-Li
nux-x86-1.0-9755-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wf
ormat -Wchar-subscripts -Wparentheses -Wpointer-arith -Wno-multichar -Werror
-O -fno-common -msoft-float -MD -Wsign-compare -Wno-cast-qual -Wno-error -D_
LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNVRM -DNV_MAJOR_VERSION=1 -DNV_MI
NOR_VERSION=0 -DNV_PATCHLEVEL=9755 -UDEBUG -U_DEBUG -DNDEBUG -DNV_SIGNAL_STR
UCT_RLIM -DNV_MULTIPLE_BRIDGE_AGPGART_PRESENT -DNV_PCI_GET_CLASS_PRESENT -DN
V_SYSCTL_MAX_MAP_COUNT_PRESENT -DNV_PM_MESSAGE_T_PRESENT -DNV_PCI_CHOOSE_STA
TE_PRESENT -DNV_VM_INSERT_PAGE_PRESENT -DNV_OLD_MM_KGDB_BREAKPOINT_PRESENT -
DNV_REMAP_PFN_RANGE_PRESENT -DNV_CHANGE_PAGE_ATTR_PRESENT -DNV_VMAP_4_PRESEN
T -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(nv)" -D"KBUIL
D_MODNAME=KBUILD_STR(nvidia)" -c -
o /tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.o /tmp/selfgz
3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c
In file included from include/linux/list.h:8,
from include/linux/preempt.h:11,
from include/linux/spinlock.h:49,
from include/linux/seqlock.h:29,
from include/linux/time.h:8,
from include/linux/timex.h:57,
from include/linux/sched.h:53,
from include/linux/utsname.h:35,
from /tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src
/nv/nv-linux.h:19,
from /tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src
/nv/nv.c:14:
include/linux/prefetch.h: In function 'prefetch_range':
include/linux/prefetch.h:62: warning: pointer of type 'void *' used in arith
metic
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c: At top level
:
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:110: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c: In function
'nvos_create_alloc':
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:460: error: '
nv_pte_t_cache' undeclared (first use in this function)
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:460: error: (
Each undeclared identifier is reported only once
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:460: error: f
or each function it appears in.)
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c: In function
'nvos_free_alloc':
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:492: error: '
nv_pte_t_cache' undeclared (first use in this function)
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c: In function
'__nv_setup_pat_entries':
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:955: warning:
comparison between signed and unsigned
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c: In function
'__nv_restore_pat_entries':
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:981: warning:
comparison between signed and unsigned
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c: In function
'nv_kern_cpu_callback':
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:1287: warning
: comparison between signed and unsigned
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:1294: warning
: comparison between signed and unsigned
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c: In function
'nvidia_init_module':
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:1420: error:
'nv_pte_t_cache' undeclared (first use in this function)
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:1420: error:
too many arguments to function 'kmem_cache_create'
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:1554: error:
void value not ignored as it ought to be
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c: In function
'nvidia_exit_module':
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:1581: error:
void value not ignored as it ought to be
/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.c:1685: error:
'nv_pte_t_cache' undeclared (first use in this function)
make[4]: ** [/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/nv/nv.o]
Erro 1
make[3]: ** [_module_/tmp/selfgz3323/NVIDIA-Linux-x86-1.0-9755-pkg1/usr/src/
nv] Erro 2
make[2]: ** [modules] Erro 2
NVIDIA: left KBUILD.
nvidia.ko failed to build!
make[1]: ** [module] Erro 1
make: ** [module] Erro 2
-> Error.
ERROR: Unable to build the NVIDIA kernel module.
ERROR: Installation has failed. Please see the file
'/var/log/nvidia-installer.log' for details. You may find suggestions
on fixing installation problems in the README available on the Linux
driver download page at www.nvidia.com.



10. Re: kernel

Paulo Sergio Travaglia
pstglia

(usa Slackware)

Enviado em 07/12/2007 - 22:49h

Pelo seu log, estão faltando alguns arquivos no diretório com os fontes do kernel. Vide abaixo
=============================================
echo; \
echo " ERROR: Kernel configuration is invalid."; \
echo " include/linux/autoconf.h or include/config/auto.conf are mis
sing."; \
echo " Run 'make oldconfig && make prepare' on kernel src to fix it
."; \
echo; \
=============================================
Tente executar os comandos sugeridos acima no diretório do fonte do kernel que você instalou




11. Re: kernel

David Jagr
jagr

(usa Slackware)

Enviado em 07/12/2007 - 23:19h

Segui sua dica e não deu certo pstglia, o log do nvdia-instaler é idêntico ao anterior.

Só para confirmar, os comandos "make oldconfig && make prepare" devem ser executados dentro de /usr/src/linux_novokernel, no caso o 2.6.23.9?

Obrigado pela atenção psglia.


12. Re: kernel

Paulo Sergio Travaglia
pstglia

(usa Slackware)

Enviado em 08/12/2007 - 13:41h

Sim, nesse diretório mesmo. De onde você baixou esses fontes?

Nota: Já tive problemas ao instalar imagens de kernel pré-compiladas, pois os fontes correspondentes estavam incompletos.

Aconselho você a baixar os fontes direto de www.kernel.org, ou usar os fontes disponíveis no DVD do slack 12.

Recompilei meu kernel por aqui (2.6.21-5-smp) usando os fontes disponíveis no DVD. Tomei como partida o .config original (fica em /boot), fiz algumas alterações ao meu gosto (Tipo de processador, Frequência de timer, desabilitar smp, etc ) compilei, instalei os driver da NVIDIA e rolou blz.

Ah, só mais uma coisa: Tentou baixar e instalar uma versão mais recente do driver (vc ta usando o 1.0.9755 certo)?



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts