Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
de kernel compilatio :)
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
MajinJoko
l33t
l33t


Joined: 20 Sep 2005
Posts: 639
Location: Bergamo / Verona

PostPosted: Fri May 13, 2011 10:32 am    Post subject: de kernel compilatio :) Reply with quote

Buongiorno a tutti.

Ho una domanda che mi gira nella testa, e che giro a voi.

Negli anni ho sempre avuto l'impressione che la prima volta che compilo un kernel ci mette una vita, e durante le successive si limita a compilare solo le modifiche fatte, quindi ci mette un sacco di meno.

Da qualche tempo ho compilato un kernel completamente ex-novo (per problemi di stand-by), e mi sembra che ora il comportamento sia differente: ogni volta che ricompilo, ci metto una vita. Magari un po' meno, ma comunque davvero "troppo".

Quindi mi vien da chiedermi se sbaglio qualcosa.

Per compilare, uso:
Code:
make -j3 && make -j3 modules_install

Comando che però ho sempre usato.


Inoltre, ho notato quest'altra differenza:
- "prima" se ricompilavo un kernel non avevo bisogno di ricompilare i driver della nvidia, dovevo farlo solo passando di versione
- "ora" devo ricompilare i driver anche se resto sulla medesima versione.

Magari i due problemi sono correlati.

Al momento sto lavorando con il kernel 2.6.36r5.
Il mio sistema è un x86 stabile.


Suggerimenti?

(Grazie)
_________________
[(.. watashi wa Urumi Kanzaki ga suki da ..)]
Back to top
View user's profile Send private message
fbcyborg
Advocate
Advocate


Joined: 16 Oct 2005
Posts: 3056
Location: ROMA

PostPosted: Fri May 13, 2011 11:35 am    Post subject: Reply with quote

Ciao,

di solito è come dici tu, ovvero se ricompili il kernel aggiungendo o rimuovendo un modulo (come modulo o built in) la compilazione dovrebbe essere molto più breve (se non erro si dice che la compilazione è incrementale).
È anche vero però che a volte capita che anche se si ricompila il kernel avendo aggiunto un solo modulo, ci impieghi molto più tempo del previsto. Forse dipende da quali moduli si compilano e dalle dipendenze (ma questa è una mia supposizione, visto che anche io ho avuto esperienze simili alla tua, anche se saltuarie). Quindi penso sia normale. Non è normale (forse) che accada sempre.

Per quanto riguarda l'istruzione che dai per compilare, il -j3 è sufficiente darlo a make, e sostanzialmente non serve farlo anche quando fai il modules_install, dato che è una semplice copia dei moduli compilati in /lib/modules.

MajinJoko wrote:
"prima" se ricompilavo un kernel non avevo bisogno di ricompilare i driver della nvidia, dovevo farlo solo passando di versione

Forse perché tu ricompilavi il kernel ma NON eseguivi il make modules_install. In questo modo sì, reinstalli il kernel (tutti i moduli built-in) in /boot, ma non reinstalli i moduli, quindi gli nvidia-drivers restano lì immacolati. Quando fai make modules_install cancelli la vecchia dir /lib/modules/`uname -r` e la reinstalli, ma in questo caso gli nvidia-drivers non ci sono e devi dare un module-rebuild rebuild, ad esempio

MajinJoko wrote:
"ora" devo ricompilare i driver anche se resto sulla medesima versione.

Questo per quanto detto sopra. Se hai dato anche make modules_install, dovrai ricompilare anche i driver nvidia.

;)
_________________
[HOWTO] Come criptare la /home usando cryptsetup e luks
[HOWTO] Abilitare il supporto al dom0 XEN su kernel 3.X
Help answer the unanswered
Back to top
View user's profile Send private message
ago
Developer
Developer


Joined: 01 Mar 2008
Posts: 1518
Location: Cosenza, Italy

PostPosted: Fri May 13, 2011 1:18 pm    Post subject: Reply with quote

Ha già detto tutto fbcyborg, aggiungo che con nouveau non si presentano problemi di compilazione ad ogni "cambio-kernel" e che puoi controllare con time.

Code:
time make -jX -s

_________________
Contattami se vuoi contribuire in:
-Arch tester
-Chromium tester
-Traduzione doc. it
-Security
Back to top
View user's profile Send private message
MajinJoko
l33t
l33t


Joined: 20 Sep 2005
Posts: 639
Location: Bergamo / Verona

PostPosted: Fri May 13, 2011 1:38 pm    Post subject: Reply with quote

fbcyborg wrote:
Ciao,

di solito è come dici tu, ovvero se ricompili il kernel aggiungendo o rimuovendo un modulo (come modulo o built in) la compilazione dovrebbe essere molto più breve (se non erro si dice che la compilazione è incrementale).
È anche vero però che a volte capita che anche se si ricompila il kernel avendo aggiunto un solo modulo, ci impieghi molto più tempo del previsto. Forse dipende da quali moduli si compilano e dalle dipendenze (ma questa è una mia supposizione, visto che anche io ho avuto esperienze simili alla tua, anche se saltuarie). Quindi penso sia normale. Non è normale (forse) che accada sempre.


Devo essere onesto, in fondo non ho mai preso il cronometro, quindi potrebbe anche essere che dura "troppo" ma non "tanto quanto".
Quello che mi tormentava era capire se (in qualche modo) io potessi aver disattivato la compilazione "incrementale". Ma ho cercato a lungo nelle opzioni del kernel senza trovare nulla di illuminante.

fbcyborg wrote:
Per quanto riguarda l'istruzione che dai per compilare, il -j3 è sufficiente darlo a make, e sostanzialmente non serve farlo anche quando fai il modules_install, dato che è una semplice copia dei moduli compilati in /lib/modules.

MajinJoko wrote:
"prima" se ricompilavo un kernel non avevo bisogno di ricompilare i driver della nvidia, dovevo farlo solo passando di versione

Forse perché tu ricompilavi il kernel ma NON eseguivi il make modules_install. In questo modo sì, reinstalli il kernel (tutti i moduli built-in) in /boot, ma non reinstalli i moduli, quindi gli nvidia-drivers restano lì immacolati. Quando fai make modules_install cancelli la vecchia dir /lib/modules/`uname -r` e la reinstalli, ma in questo caso gli nvidia-drivers non ci sono e devi dare un module-rebuild rebuild, ad esempio

MajinJoko wrote:
"ora" devo ricompilare i driver anche se resto sulla medesima versione.

Questo per quanto detto sopra. Se hai dato anche make modules_install, dovrai ricompilare anche i driver nvidia.

;)



Ecco, questo non mi torna. Però, evidentemente, mi sbaglio.

Grazie mille!
_________________
[(.. watashi wa Urumi Kanzaki ga suki da ..)]
Back to top
View user's profile Send private message
ago
Developer
Developer


Joined: 01 Mar 2008
Posts: 1518
Location: Cosenza, Italy

PostPosted: Fri May 13, 2011 2:40 pm    Post subject: Reply with quote

MajinJoko wrote:
Quello che mi tormentava era capire se (in qualche modo) io potessi aver disattivato la compilazione "incrementale". Ma ho cercato a lungo nelle opzioni del kernel senza trovare nulla di illuminante.


Quello che dici tu è una semplice aggiunta di qualche modulo, seguito da un
Code:
make modules && make modules_install
Questo sarebbe il metodo "incrementale" ma che ti permette di aggiungere solo moduli
_________________
Contattami se vuoi contribuire in:
-Arch tester
-Chromium tester
-Traduzione doc. it
-Security
Back to top
View user's profile Send private message
cloc3
Advocate
Advocate


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

PostPosted: Fri May 13, 2011 3:02 pm    Post subject: Reply with quote

io incontro un problema diverso, quando compilo i kernel, perché uso aufs2, che installa una patch specifica.
per fare le cose in modo corretto, devo fare molta attenzione all'ordine delle operazioni.
dopo parecchie prove, ho stabilito che l'ordine preferibile è il seguente:

    1. s939 ~ # make modules_prepare
    2. s939 ~ # USE="kernel-patch" emerge -1 aufs2
    3. s939 ~ # make -j9 # 8) me, ci ha un sacco di cpu ...
    4. s939 ~ # make modules_install
    5. s939 ~ # emerge @module-rebuild

in questo modo evito di compilare il kernel prima di avere installato la patch, che mi fa pasticci da panico in terraSanta.
_________________
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