Tech Network
Linux-magazine.it Forum
Settembre 07, 2010, 02:38:30 am *
Benvenuto! Accedi o registrati.
Hai dimenticato l'e-mail di attivazione?
 




Pagine: [1]   Vai giù
  Stampa  
Autore Discussione: problema kernel  (Letto 1114 volte)
0 utenti e 1 Utente non registrato stanno visualizzando questa discussione.
pulce
Sr. Member
****

Karma: +4/-3
Scollegato Scollegato

Messaggi: 387



Mostra profilo
« inserita:: Marzo 06, 2010, 11:36:45 pm »

Salve, sto compilando il kernel 2.6.33
Ho compilato con make defconfig et poi "ritoccando" manualmente le opzioni relative a kernel e memoria per adattarla al mio hardware. In dettaglio ho modificato:
scelta Default I/O scheduler -> Deadline
Core 2/Newer Xeon
High Memory Support -> 64GB [mi serve per i miei 6GB]
ho tolto il segno di spunta a Reserve low 64K of RAM on AMI/Phoenix BIOSen (per risolvere il problema bios notato in dmesg)
Timer frequency -> 300 HZ
segno di spunta su MTRR (Memory Type range Register)
[per la cronaca ho provato pure senza MTRR, senza risultato]

Il risultato è devastante: qualunque applicazione lanciassi, kwrite, o altro, mi ritrovo con un messaggio di errore di crash 'causato segnale 11 (SIGSEGV)' oppure 'segnale 6 (SIGABRT); mi pure crashato lo stesso KDE semplicemente terminando improvvisamente la sessione e costringendomi a rientrare. Inoltre da shell ho provato a usare tar per scompattare ottenendo un problema EOF, cosa assurda dato che con il kernel di default tutto funziona.
Noto che però il sistema sembra avviarsi  più velocemente con il nuovo kernel.
In dmesg ho trovato questo:
[    0.336056] i801_smbus 0000:00:1f.3: PCI INT C -> GSI 18 (level, low) -> IRQ 18
[    0.336229] ACPI: I/O resource 0000:00:1f.3 [0x400-0x41f] conflicts with ACPI region SMRG [0x400-0x40f]
[    0.336402] ACPI
Se serve postarlo tutto, indicami un posto utile dove postare dei file .txt, perchè il solito shark permette solo le immagini...
Registrato
michele.p
Global Moderator
Hero Member
*****

Karma: +46/-40
Scollegato Scollegato

Messaggi: 5549



Mostra profilo
« Risposta #1 inserita:: Marzo 08, 2010, 12:28:39 am »

Prova ad utilizzare il file .config del kernel funzionante senza fare modifiche e vedi se funziona. Se tutto funziona regolarmente inizi a sistemare altri parametri. Se invece non funziona con il file .config del kernel funzionante allora vuol dire che c'è qualche parametro da attivare/disattivare che disturba il buon funzionamento del tuo hardware ...spero di essermi spiegato.  Occhi al cielo

Bye  Fico
Registrato

pulce
Sr. Member
****

Karma: +4/-3
Scollegato Scollegato

Messaggi: 387



Mostra profilo
« Risposta #2 inserita:: Marzo 08, 2010, 07:23:52 pm »

Allora il problema sembra essere causato dall'opzione per il supporto di oltre 4Gb di RAM, che a me piacerebbe attivare per usare tutti i miei 6 Gb. Infatti ho provato a compilare un kernel .33 con tutte le opzioni indicate nel messaggio precedente tranne quella e in effetti funziona, mantenendo nonostante tutto anche i difetti del kernel .26 di default, ossia una certa lentezza cronica nell'apertura delle applicazioni.
L'altro problema, il conflitto di I/O resource resta invariato nel .33 compilato senza l'opzione di cui ho parlato sopra, però non sembra causare grossi problemi. Però forse ho trovato la soluzione per quest'ultimo cruccio...
P.S. O.T. Thanks for the 4th star..
« Ultima modifica: Marzo 08, 2010, 07:46:38 pm da pulce » Registrato
michele.p
Global Moderator
Hero Member
*****

Karma: +46/-40
Scollegato Scollegato

Messaggi: 5549



Mostra profilo
« Risposta #3 inserita:: Marzo 09, 2010, 03:54:29 pm »

...mantenendo un paio di kernel funzionanti prova a fare queste modifiche;

1) In luogo del Deadline utilizza lo schedulatore CFQ;
2) In Processor type and features trova Preemption Model e scegli Preemptible Kernel. Infine scegli la frequenza in Timer Frequency a 1000Hz ...300HZ è un valore che non ho mai capito  Che?!?

Vedi se così le cose miglioraneo. Poi passiamo alla memoria.

Bye  Fico
Registrato

pulce
Sr. Member
****

Karma: +4/-3
Scollegato Scollegato

Messaggi: 387



Mostra profilo
« Risposta #4 inserita:: Marzo 10, 2010, 08:53:40 pm »

Ok. ho compilato con le opzioni suggerite e il sistema sembra un poco più reattivo, ma secondo me la causa della poco reattività è soprattutto legata alla memoria.
Per quest'ultima, ho trovato sul manuale della motherboard una frase che elimina qualunque tenue speranza di risolvere il problema:
due to chipset limitation, this motherboard can only support up to 8 Gb di RAM on operating system listed below. You may install a maximum of 2 Gb on each slot.
win XP Professional x64 Edition
win Vista x64 Edition
Naturalmente se conosci una maniera, una patch o altri sistemi per bypassare questo limite,  sono tutt'orecchi.
Rebus sic stantibus, mi impongo l'imperativo categorico kantiano di procurarmi una distro 64 bit (possibilmente entro domani sera...)
Secondo me il valore di 300Mhz serve per un sistema che non vuole privilegiare in maniera eccessiva la velocità di esecuzione dei programmi, altrimenti si userebbe 100MHz ma neppure essere eccessivamente reattivo ed avere per contro l'esecuzione dei programmi lentissimi (magari il sistema diventa troppo lento a compilare pacchetti veramente pesanti). Penso che sia una scelta tutto sommato molto "all'italiana". Magari però comincio a credere che si possa
Registrato
michele.p
Global Moderator
Hero Member
*****

Karma: +46/-40
Scollegato Scollegato

Messaggi: 5549



Mostra profilo
« Risposta #5 inserita:: Marzo 13, 2010, 11:57:41 pm »

...che scheda madre è? ..marca e modello...

Bye  Fico
Registrato

pulce
Sr. Member
****

Karma: +4/-3
Scollegato Scollegato

Messaggi: 387



Mostra profilo
« Risposta #6 inserita:: Marzo 14, 2010, 04:41:40 pm »

La mobo è una P5K-SE della ASUS...
In realtà forse ho trovato la maniera di risolvere in una maniera magari poca ortodossa et elegante, però ho letto che si può compilare un kernel con l'opzione per 64bit, pure usando distro a 32 bit proprio per risolvere problemi di memoria.
Codice:
make ARCH=x86_64 defconfig
...messa a punto delle opzioni per il mio processore con make ARCH=x86_64 xconfig
make-kpkg kernel-image --arch amd64 --cross-compile -  [con altre opzioni opportune come initrd etc etc]
Riscrivo qui questo procedimento perchè fino qui il sistema non restituisce errori particolari, e il pacchetto risultante è installato senza problemi, però sia chiaro che poi se provo ad avviare con il kernel così ottenuto risulta un errore di memoria segmentata e se non sbaglio pure qualcosa d'altro e il sistema non completa l'avvio. Ho trovato questo "suggerimento" pure senza i comandi specificati, che ho ricercato su Internet, nelle pagine in cui si spiega quale "versione" di Debian scegliere per una determinata architettura.
Per la cronaca io ho scaricato pure il primo CD di Debian amd64 [adatta per il mio processore] e ho pasticciato parecchio quando ho provato ad ingrandire una partizione per installarla con Partition Editor dall'interno della distro che ho attualmente installato. Tuttavia non ci sono riuscito perchè il processo di foramttazione della partizione eseguito dal CD di installazione si blocca. Non vorrei che l'errore che mi risulta installando il kernel versione 64 sia legato in qualche modo a questa operazione. Per la cronaca riesco ancora a usare il sistema usando il kernel di default, però la tentazione di formattare tutto è forte...
Registrato
pulce
Sr. Member
****

Karma: +4/-3
Scollegato Scollegato

Messaggi: 387



Mostra profilo
« Risposta #7 inserita:: Marzo 15, 2010, 05:56:32 pm »

Mi autorispondo in un momento di pura disperazione: ho provato a ripulire il disco usando un software che mette a 0 ogni singolo bit, però quando uso il cd di installazione della distro a 64bit, il sistema si blocca durante la formattazione. Ho allora provato a usare la distro live Gparted per creare le partizioni et poi lasciare al cd di installazione della distro solo il compito puro di installazione [così non ho incontrato difficoltà nella partizione e formattazione, chissà cosa ci può essere di diverso rispetto al tool di un cd di installazione... però almeno questo problema è comunque risolto]; nonostante questo  il processo di installazione non riesce a completarsi perchè un messaggio dichiara che c'è un errore non meglio specificato quando prova a installare il kernel... Ho pure provato a mettere  a 0 con software appositi la tabella di partizione del disco e pure azzerare tutto MBR, ma senza risultato.... Broncio
Con la Debian 32 bit non ho avuto tutti questi crucci...
Registrato
michele.p
Global Moderator
Hero Member
*****

Karma: +46/-40
Scollegato Scollegato

Messaggi: 5549



Mostra profilo
« Risposta #8 inserita:: Marzo 15, 2010, 06:20:39 pm »

...ma non è, che per caso, la ISO che hai scaricato era corrotta (...o si è corrotta durante il download)?

Bye  Fico
Registrato

pulce
Sr. Member
****

Karma: +4/-3
Scollegato Scollegato

Messaggi: 387



Mostra profilo
« Risposta #9 inserita:: Marzo 18, 2010, 03:38:29 pm »

Ho risolto  Felice: non era l'immagine ISO corrotta, ma l'oc che è mal supportato dalla macchinain questione. riportando tuttii parametri ai valori di default sono riuscito a installare il 64 bit senza guai; probabilmente durante l'uso comune della macchina  a 32 bit il problema non si evidenziava, ma è diventato evidente sotto un carico probabilmente maggiore in certi momenti durante l'installazione della distro a 64 bit arrivando a bloccare il computer.
La verifica della stabilità del sistema con il solito test sulla memoria memtest ha in effetti reso evidente il tutto. Provvederò un oc più raffinato e soprattutto verificherò subito dopo con memtest così da evitare problemi del genere in futuro, evitando di basarmi solamente sul fatto che la macchina si avviava per concludere che dopo l'oc tutto funzioni.
Per la cronaca con la distro a 64 bit ho recuperato una buona velocità di risposta pure senza oc e kernel di default, sicuramente maggiore rispetto alla precedente. Però naturalmente ricompilerò il kernel...
Ora il computer vede tutti miei 6 GB di RAM, anche se dubito che arrivi mai a utilizzarli tutti...
Lo scotto da pagare è che ho scaricato solo il primo CD ed ora non ho più a disposizione tutti i pacchetti contenuti nel DVD...Tra l'altro pur avendo scaricato l'ultima versione disponibile, non c'è ancora KDE 4.x, me lo compilerò...
E ancora ora ricomincerò a compilare la LFS in versione però 64 bit dato che lavoro già su una distro 64 bit e quindi potrò seguire il manuale LFS senza crucci evitando il cross-compile.

Un ultimo dettaglio: perchè la distro a 64 bit relativa ai Core Duo ha la desinenza amd64? E' una cosa semplicemente assurda e fuorviante, tanto è vero che la prima volta che ho scaricato la distro ho sbagliato credendo che quellla adatta a me fosse ia64 (mai avrei immaginato che per un processore Intel la versione giusta fose amd64...è un controsenso).
Propongo un assoluto cambio che renda meno facile questo errore: basterebbe un generico x1_64 et x2_64. In questo modo uno se già non lo sa è costretto a leggersi le pagine a riguardo ed evitare così di scaricare un files piuttosto pesante (600 Mb non sono uno scherzo) solo perchè basandosi sul buon senso sceglie una desinenza piuttosto che un'altra che sembra messa apposta per ingannare l'ignaro utente.
Registrato
michele.p
Global Moderator
Hero Member
*****

Karma: +46/-40
Scollegato Scollegato

Messaggi: 5549



Mostra profilo
« Risposta #10 inserita:: Marzo 22, 2010, 02:49:38 pm »

...quindi come procede la LFS?  Felice

Riguardo all'ultimo dettaglio;

http://www.squadrainformatica.com/it/blog/linux_ia64_e_amd64_un_po_di_chiarezza

probabilmente dovuto a questa definizione che si diede a ia64;

http://it.wikipedia.org/wiki/IA-64

e infatti;

http://it.wikipedia.org/wiki/X86-64

Bye  Fico
« Ultima modifica: Marzo 22, 2010, 02:52:53 pm da michele.p » Registrato

pulce
Sr. Member
****

Karma: +4/-3
Scollegato Scollegato

Messaggi: 387



Mostra profilo
« Risposta #11 inserita:: Marzo 24, 2010, 09:42:56 pm »

i) Se ti stai riferendo alla LFS 64 bit non procede per nulla perchè ho un piccolo intoppo: nella partizione che avevo lasciato libera per compilare LFS, ho dovuto installare una versione di Debian 32-bit perchè pare che il driver del modem slmodem sia disponibile solo in versione 32bit et non sia compatibile con l'attuale versione del gcc della Debian 64 bit. A quanto ho letto in giro in Internet  la soluzione sarebbe usare una versione precedente di gcc; dopo aver risolto questo guaio in maniera tale da assicurarmi la connessione ad Internet da DEbian 64 bit, possibilmente magari già stasera, riprenderò con il giochino di LFS.
Ho perso forzatamente alcuni giorni per risolvere questo imprevisto...

ii) Circa il nome della distro 64-bit per cpu Intel diverse da quelle con architettura IA64, io sostengo che le ragioni "storiche" non possano giustificare la desinenza -amd64.
Infatti la lingua evolve con l'aggiunta di neologisimi a volte necessari e raffinati qualche altra volta orribili e nel contempo altre parole sono usate sempre di meno fino a meritarsi sul vocabolario la dizione di "arcaico".
Poichè al momento attuale le cpu Intel et amd a 64 bit richiedono la distro con la stessa dicitura "amd64" e queste sono in maggioranza rispetto alle cpu ormai vecchie tipo IA64, è logico modificare la desinenza in -IntelAmd64, in maniera tale che meno persone sbaglino la scelta della distro, anteponendo così la ragione pratica a una ormai obsoleta ragione "storica".
Nel peggiore dei casi potrei anche accettare un generico -64bit che può essere un tranello per chi usa IA64, ma in ogni caso essendo questi in numero minore rispetto agli altri, sicuramente il numero di persone tratte in inganno risulterebbe minore rispetto all'attuale.
Registrato
pulce
Sr. Member
****

Karma: +4/-3
Scollegato Scollegato

Messaggi: 387



Mostra profilo
« Risposta #12 inserita:: Aprile 01, 2010, 06:28:50 pm »

Ehm, il "piccolo intoppo" di cui parlavo nel messaggio precedente, ossia la compilazione del driver slmodem è dieventato un problema abbastanza preoccupante: non riesco a risolverlo e quindi sono bloccato... Imbarazzato
Per esteso:
debian:/usr/src/slmodem-2.9.11-20090222# make
make -C modem all
make[1]: Entering directory `/usr/src/slmodem-2.9.11-20090222/modem'
rebuild profile...
gcc -m32 -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_main.o -c modem_main.c
In file included from /usr/include/features.h:354,
                 from /usr/include/unistd.h:26,
                 from modem_main.c:45:
/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
make[1]: *** [modem_main.o] Error 1
make[1]: Leaving directory `/usr/src/slmodem-2.9.11-20090222/modem'
make: *** [modem] Error 2

Ho provato con una soluzione trovata in Internet, ossia di usare la versione precedente di gcc, ma ottengo
debian:/usr/src/slmodem-2.9.11-20090222# make
make -C modem all
make[1]: Entering directory `/usr/src/slmodem-2.9.11-20090222/modem'
rebuild profile...
gcc -m32 -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_main.o -c modem_main.c
gcc: installation problem, cannot exec `cc1': No such file or directory
make[1]: *** [modem_main.o] Error 1
make[1]: Leaving directory `/usr/src/slmodem-2.9.11-20090222/modem'
make: *** [modem] Error 2

e aggiungendo gli altri file di corredo al compilatore si ritorna addirittura all'errore precedente...

Ho provato addirittura a copiare dal sistema a 32bit la cartella con il modulo compilato e dentro il sistema 64 bit a dare make install che apparentemente non da errori, però in realtà non installa un bel niente...
Registrato
Pagine: [1]   Vai su
  Stampa  
 
Vai a: