Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[KERNEL]Errori in avvio[quasi irrisolto]
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian)
View previous topic :: View next topic  
Author Message
cloc3
Advocate
Advocate


Joined: 13 Jan 2004
Posts: 4810
Location: http://www.gentoo-users.org/user/cloc3/

PostPosted: Sun Aug 15, 2004 2:00 pm    Post subject: [KERNEL]Errori in avvio[quasi irrisolto] Reply with quote

Sto cercando di avviare un nuovo gentoo-dev-sources su un pentium-4, utilizzndo il .config per il 2.6.4-gentoo-rc1.
Niente da fare, ricevo questo errore:

Code:
Unable to handle kernel NULL pointer dereference at virtual address 00000001
printing eip:


da cosa può dipendere?
_________________
vu vu vu
gentù
mi piaci tu


Last edited by cloc3 on Mon Aug 16, 2004 8:59 pm; edited 2 times in total
Back to top
View user's profile Send private message
mriya3
Tux's lil' helper
Tux's lil' helper


Joined: 27 Jul 2004
Posts: 124
Location: Switzerland

PostPosted: Sun Aug 15, 2004 2:22 pm    Post subject: Reply with quote

Quali flag usi per compilare?
Puoi postare /etc/make.conf per favore?
_________________
--
http://www.mriya3.tk | http://www.mriyasoftware.com
--
"Make everything as simple as possible, but not simpler."
-- Albert Einstein
Back to top
View user's profile Send private message
cloc3
Advocate
Advocate


Joined: 13 Jan 2004
Posts: 4810
Location: http://www.gentoo-users.org/user/cloc3/

PostPosted: Sun Aug 15, 2004 2:30 pm    Post subject: Reply with quote

Code:

linux17 cloc3 # cat /etc/make.conf
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -fPIC"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
USE="X gtk gnome qt kde alsa"
AUTOCLEAN="yes"
ACCEPT_KEYWORDS="~x86"
MAKEOPTS="-j3"
GENTOO_MIRRORS="ftp://mir.zyrianes.net/gentoo/ http://mir.zyrianes.net/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ http://www.gigaload.org/gentoo.org/"

_________________
vu vu vu
gentù
mi piaci tu
Back to top
View user's profile Send private message
mriya3
Tux's lil' helper
Tux's lil' helper


Joined: 27 Jul 2004
Posts: 124
Location: Switzerland

PostPosted: Sun Aug 15, 2004 2:41 pm    Post subject: Reply with quote

Hai installati i driver NVidia o ATI ?
_________________
--
http://www.mriya3.tk | http://www.mriyasoftware.com
--
"Make everything as simple as possible, but not simpler."
-- Albert Einstein


Last edited by mriya3 on Sun Aug 15, 2004 4:16 pm; edited 1 time in total
Back to top
View user's profile Send private message
Danilo
l33t
l33t


Joined: 05 Feb 2004
Posts: 747
Location: Italy

PostPosted: Sun Aug 15, 2004 3:53 pm    Post subject: Reply with quote

mriya3 wrote:
Quali flag usi per compilare?
Puoi postare /etc/make.conf per favore?


Da quello che sapevo la compilazione del kernel e' indipendente dalle tue flags.
In pratica l'ebuild sovrascrive le tue...
Back to top
View user's profile Send private message
cloc3
Advocate
Advocate


Joined: 13 Jan 2004
Posts: 4810
Location: http://www.gentoo-users.org/user/cloc3/

PostPosted: Mon Aug 16, 2004 12:27 pm    Post subject: Reply with quote

Finalmente ho qualcosa di concreto. Sono gli ACPI.

Infatti, compilando il kernel senza il supporto ACPI, è partito.

Adesso la cose possono essere due:

    - è un baco... Improbabile. Siamo alla r14, e me ne accorgo io?

    - I miei setting degli ACPI sono imprecisi, ma le versioni precedenti del kernel erano poco sensibili all'errore. Domani posto una configurazione degli ACPI funzionante sul mio sistema e/o chiedo spiegazioni su questo comportamento.

_________________
vu vu vu
gentù
mi piaci tu
Back to top
View user's profile Send private message
antenore
n00b
n00b


Joined: 15 Jul 2003
Posts: 46

PostPosted: Mon Aug 16, 2004 12:46 pm    Post subject: Reply with quote

Ciao,
tempo fa ho scritto una miniguida per fixare DSDT bacati, in parte tradotta da quella di gentoo.
Potrebbe esserti utile...
http://www.linuxdesktop.it/modules.php?name=News&file=article&sid=1400&mode=thread&order=0&thold=0

Attento a quello che fai, non sono responsabile per eventuali danni!!!
:wink:
Back to top
View user's profile Send private message
cloc3
Advocate
Advocate


Joined: 13 Jan 2004
Posts: 4810
Location: http://www.gentoo-users.org/user/cloc3/

PostPosted: Mon Aug 16, 2004 8:49 pm    Post subject: Reply with quote

Purtroppo, appena provo a introdurre gli ACPI, ottengo un errore.

Il manuale di Antenore è affascinante, ma non fa per me, anche perchè il computer su cui lavoro non è mio. Mi basterebbe capire alcune cose. Mi scuso per l'ingenuità delle domande.

- Cosa sono le DSTD? Si tratta per caso di dati scritti da qualche parte nella ROM della scheda madre? Sono informazioni strettamente associate all'hardware e diverse da macchina a macchina?

- Perchè non avevo osservato il fenomeno con i kernel precedenti? Potrebbe scomparire e riapparire spontaneamente, a seconda della versione del kernel?

- Utilizzare una macchina senza gli ACPI potrebbe danneggiarla? Gli ACPI non sono gestiti autonomamente anche dalla BIOS?
_________________
vu vu vu
gentù
mi piaci tu
Back to top
View user's profile Send private message
antenore
n00b
n00b


Joined: 15 Jul 2003
Posts: 46

PostPosted: Tue Aug 17, 2004 8:22 am    Post subject: Reply with quote

Parlare in due righe dell'ACPI non è banale e non questa la sede (porterebbe via troppo spazio)
In poche parole...
ACPI : Advanced Configuration and Power Interface Specification.

Sono una serie di specifiche implementate da Compaq/Intel/Microsoft/Phoenix/Toshiba per la gestione del "power management" da sistema operativo. Una ROM è troppo piccola per contenere tutte le istruzioni necessarie, così con queste specifiche è possibile gestirle, agevolmente, da SO.

Differentiated System Description Table (DSDT) è fornita dagli OEM per i propri hardware, all'avvio, il SO che lo supporta, inserisce questa tabella nel Name Space dell'ACPI e lo utilizza per sapere come gestire l'hardware.

Il problema nasce quando gli OEM non rispecchiano fedelmente le specifiche e così accade che sistemi operativi come MS, che ricevono i dsdt corretti, funzionano correttamente e SO, quali gnu/linux, no.
A questo punto occorre fare un pò di reverse engineering e correggere a mano i problemi...

Scusa se non sono stato molto chiaro, ma è un discorso complicato.

Cosa potresti fare? Vedere se qualcuno ha già risolto il tuo problema e scaricarti il dsdt corretto http://acpi.sourceforge.net/dsdt/view.php.
Se li non trovi nulla prova su google e incrocia le dita...

Se non trovi nulla non ci puoi fare nulla, disabiliti ACPI e vedi se con APM funzionano sleep e funzionalità del genere. Altrimenti ne fai a meno.
Back to top
View user's profile Send private message
cloc3
Advocate
Advocate


Joined: 13 Jan 2004
Posts: 4810
Location: http://www.gentoo-users.org/user/cloc3/

PostPosted: Tue Aug 17, 2004 10:10 am    Post subject: Reply with quote

Sopravvivere senza acpi è forse la cosa più saggia.
Ma purtroppo ormai la strada è stata aperta.

Ho estratto la versione delle dsdt per il kernel 2.6.4, che riesco a vedere.
Per il 2.6.7, invece, è impossibile, perche non possiedo alcuna directory /proc/acpi, avendolo compilato senza gli acpi stessi.
Immagino tuttavia che i due kernel utilizzino gli stessi file, pur trattandoli evidentemente in modi diversi.

L'ouput del mio iasl è il seguente:
Code:

linux17 compiler # ./iasl -tc dsdt.dsl

Intel ACPI Component Architecture
ASL Optimizing Compiler / AML Disassembler version 20040715 [Aug 17 2004]
Copyright (C) 2000 - 2004 Intel Corporation
Supports ACPI Specification Revision 2.0c

dsdt.dsl  3708:     If (SS1)
Error    1037 -      ^ syntax error, unexpected PARSEOP_IF

ASL Input:  dsdt.dsl - 3721 lines, 115317 bytes, 1748 keywords
Compilation complete. 1 Errors, 0 Warnings, 0 Remarks, 0 Optimizations

Dunque esiste un errore soltanto! Pensare che lo stesso test, realizzato sul portatile, ha mostarto 54 errori e centinaia di ottimizzazioni, eppure li gli acpi funzionano. Funzionerebbero... ?

E' un errore difficile da correggere? Provo postare anche un estratto del file sorgente dsdt.dsl dalla linea 3708 alla linea 3718:
Code:

    If (SS1)
    {
        Name (\_SB.PCI0._S1D, 0x02)
        Name (\_SB.PCI0.P0P1._S1D, 0x02)
        Name (\_SB.PCI0.USB0._S1D, 0x02)
        Name (\_SB.PCI0.USB1._S1D, 0x02)
        Name (\_SB.PCI0.USB2._S1D, 0x02)
        Name (\_SB.PCI0.USB3._S1D, 0x02)
        Name (\_SB.PCI0.USB7._S1D, 0x02)
        Name (\_SB.PCI0.AC97._S1D, 0x02)
    }


EDIT *

Toh, ma guarda un po' questo link!

Guarda soprattutto la data dell'ultima modifica... Vuoi scommettere che se ne è accorto anche qualcun altro, del mio problema, e che fra poco si sistemerà solo?

_________________
vu vu vu
gentù
mi piaci tu
Back to top
View user's profile Send private message
antenore
n00b
n00b


Joined: 15 Jul 2003
Posts: 46

PostPosted: Wed Aug 18, 2004 7:32 am    Post subject: Reply with quote

Sembrerebbe un baco a prima vista...

Prova a postare il tuo problema sulla mailing list di acpi.sourceforge.net.

Comunque il problema è nel blocco precedente a quello da te postato.

In quel punto non si aspetta un
If (SS1)

Ma probabilmente una parentesi di chiusura o altro del blocco precedente.

Secondo me non sono state chiuse correttamente le parentesi del blocco precedente.

Nota come è la sintassi...

Quote:

Method (_STA, 0, NotSerialized)
{
STAL (0x60)
}


Etc. etc. etc.

Guarda gli altri blocchi...
Back to top
View user's profile Send private message
cloc3
Advocate
Advocate


Joined: 13 Jan 2004
Posts: 4810
Location: http://www.gentoo-users.org/user/cloc3/

PostPosted: Thu Aug 19, 2004 2:35 pm    Post subject: Reply with quote

antenore wrote:

Prova a postare il tuo problema sulla mailing list di acpi.sourceforge.net.

Comunque il problema è nel blocco precedente a quello da te postato.


Anche io, nella mia ignoranza in fatto di programmazione, avevo cercato una parentesi mancante, provando anche ad aggiungerne e toglierne qualcuna casualmente per osservare l'effetto, ma senza fortuna.

La cosa che non capisco è come mai un errore così manifesto possa risultare irrilevante per il kernel 2.6.5, dove acpi funziona.

Mi sorge anche il dubbio che l'errore di sintassi sia introdotto da iasl in fase di disassembling, e che io quindi non possa percepire i reali roblemi del mio dsdt (è possibile?).

Per quanto concerne la sottomissione del problema a sourceforge, vorrei avere delle indicazioni sulle informazioni corrette da postare per ottenere una risposta.

Nel frattempo, posto un'altra porzione del codice sorgente (quella che precede l'If):

*** a proposito, grazie per l'aiuto.

Code:

        Method (_MSG, 1, NotSerialized)
        {
            Noop
        }
    }

    Scope (\_SB)
    {
        Scope (PCI0)
        {
            Method (_INI, 0, NotSerialized)
            {
                Store (0x00, PMEE)
                Store (0x00, MSEE)
                Store (0x00, KBDE)
                Store (0x00, RI1E)
                \_SB.PCI0.SBRG.IODT ()
                If (CondRefOf (_OSI, Local0))
                {
                    Store (0x01, OSYS)
                }
                Else
                {
                    Store (0x00, OSYS)
                }
            }

            Name (CRS, ResourceTemplate ()
            {
                WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
                    0x0000,
                    0x0000,
                    0x00FF,
                    0x0000,
                    0x0100)
                IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08)
                WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                    0x0000,
                    0x0000,
                    0x0CF7,
                    0x0000,
                    0x0CF8)
                WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                    0x0000,
                    0x0D00,
                    0xFFFF,
                    0x0000,
                    0xF300)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                    0x00000000,
                    0x000A0000,
                    0x000BFFFF,
                    0x00000000,
                    0x00020000)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                    0x00000000,
                    0x00000000,
                    0x00000000,
                    0x00000000,
                    0x00000000)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                    0x00000000,
                    0x00000000,
                    0x00000000,
                    0x00000000,
                    0x00000000)
            })
            CreateDWordField (CRS, 0x5C, MIN5)
            CreateDWordField (CRS, 0x60, MAX5)
            CreateDWordField (CRS, 0x68, LEN5)
            CreateDWordField (CRS, 0x76, MIN6)
            CreateDWordField (CRS, 0x7A, MAX6)
            CreateDWordField (CRS, 0x82, LEN6)
            Method (_CRS, 0, NotSerialized)
            {
                Store (MG1B, MIN5)
                Store (MG1L, LEN5)
                Store (MG1L, Local0)
                If (Local0)
                {
                    Add (MIN5, Decrement (Local0), MAX5)
                }

                Store (MG2B, MIN6)
                Store (MG2L, LEN6)
                Store (MG2L, Local0)
                Add (MIN6, Decrement (Local0), MAX6)
                Return (CRS)
            }
        }
    }

    If (SS1)
    {
... etc.

_________________
vu vu vu
gentù
mi piaci tu
Back to top
View user's profile Send private message
Ceppus
n00b
n00b


Joined: 01 Apr 2004
Posts: 63
Location: TI / GR - Svizzera

PostPosted: Fri Aug 20, 2004 5:56 am    Post subject: Reply with quote

antenore wrote:

Ma probabilmente una parentesi di chiusura o altro del blocco precedente.

Secondo me non sono state chiuse correttamente le parentesi del blocco precedente.


Quella parentesi tonda dopo la graffa dove viene aperta?
È una delle parentesi che hai aggiunto tu?

Code:

...
                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                    0x00000000,
                    0x00000000,
                    0x00000000,
                    0x00000000,
                    0x00000000)
              })
            CreateDWordField (CRS, 0x5C, MIN5)
            CreateDWordField (CRS, 0x60, MAX5)
...

_________________
... mhh, il gatto avrà catturato un'alce...
Back to top
View user's profile Send private message
Ceppus
n00b
n00b


Joined: 01 Apr 2004
Posts: 63
Location: TI / GR - Svizzera

PostPosted: Fri Aug 20, 2004 5:58 am    Post subject: Reply with quote

OK, stronzata...

:oops: scusate ma sono le 8 di mattina...
_________________
... mhh, il gatto avrà catturato un'alce...
Back to top
View user's profile Send private message
cloc3
Advocate
Advocate


Joined: 13 Jan 2004
Posts: 4810
Location: http://www.gentoo-users.org/user/cloc3/

PostPosted: Fri Aug 20, 2004 6:23 am    Post subject: Reply with quote

Ceppus wrote:


Quella parentesi tonda dopo la graffa dove viene aperta?
È una delle parentesi che hai aggiunto tu?



Certamente no. Io ho citato i miei esperimenti gratuiti, ma (ovviamente) ho postato il testo originale, estratto col taglia-incolla. La parentesi in questione verrebbe aperta nella riga


Code:
            Name (CRS, ResourceTemplate ()


poco sopra.
_________________
vu vu vu
gentù
mi piaci tu
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum