# Kernel - idealna kompilacja

## kreon28

Hej,

Próbując używać cpuspeedy i moblock pojawia mi się problem z jajkiem

Na początku cpuspeedy. (Mam 2.6.22-gentoo-r9)

Zrobiłem tak:

```
[*] CPU Frequency scaling

[ ] Enable CPUfreq debugging

<M> CPU frequency translation statistics

[ ] CPU frequency translation statistics details

Default CPUFreq governor (performance) --->

--- 'performance' governor

<M> 'powersave' governor

<M> 'userspace' governor for userspace frequency scaling

<M> 'ondemand' cpufreq policy governor

<M> 'conservative' cpufreq governor

--- CPUFreq processor driver

< > AMD Opteron/Athlon64 PowerNow!

< > Intel Enhanced SpeedStep (deprecated)

<M> ACPI Processor P-States driver

--- shared options

[ ] /proc/acpi/processor/../performance interface (deprecated) 
```

Ale 

```
modprobe acpi-cpufreq

FATAL: Error inserting acpi_cpufreq (/lib/modules/2.6.22-gentoo-r9/kernel/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.ko): No such device
```

Nie wiem dlaczego tego brakuje i gdzie to znaleźć?

Teraz moblock

Uruchamiając go:

```
/etc/cron.daily/moblock
```

Na końcu dostaje

```
 * Starting MoBlock ...

FATAL: Module ipt_NFQUEUE not found.

iptables: No chain/target/match by that name

iptables: No chain/target/match by that name

iptables: No chain/target/match by that name                                      [ !! ]

```

----------

## mistix

Może to głupio zabrzmi ale zrobiłeś make modules && make modules_install ? A to drugie nie działa bo nie masz w jądro wkompilowane ipt_NFQUEUE.

----------

## SlashBeast

Jezeli dał make to nie musi potem make modules, to nie 2.4..x.y.

----------

## kreon28

 *SlashBeast wrote:*   

> Jezeli dał make to nie musi potem make modules, to nie 2.4..x.y.

 

Dokładnie tak  :Smile:  Kompiluje genkernelem i aż takim lamem nie jestem  :Smile: 

Co do ipt_NFQUEUE to wiem, ze tego nie mam wkompilowane ale nie wiem gdzie to znaleźć :/

----------

## matiit

panowie a nie wystarczy make && make modules_install? przecież make robi także i moduły...

----------

## SlashBeast

Napisałem to 2 posty nad Twoim.  :Smile: 

----------

## lmmsci

@kreon28:

Zobacz, czy w pliku .config w katalogu kernela masz zaznaczone:

 *Quote:*   

> #
> 
> # CPUFreq processor drivers
> 
> #
> ...

 

Jeśli chodzi o zmiany częstotliwości procesora, to w 2.6.23 całość delikatnie różni się od 2.6.22. Podobnie obsługa iptables. Poza tym najbezpieczniejsza (tak przynajmniej uważam) jest jest ręczna konfiguracja i kompilacja (oczywiście, trzeba tu trochę doświadczenia, ale szybko się nauczysz):

```
make menuconfig

make all && make modules_install
```

no i odpowiednie przeniesienie nowego jądra do /boot oraz zmiany w konfiguracji bootloadera. Wtedy, wiesz co masz.

----------

## SlashBeast

make all zbędne, make załatwia modules i bzImage.  :Smile: 

U mnie cpufreq wygląda tak:

```
[*] CPU Frequency scaling

[ ]   Enable CPUfreq debuggin

< >   CPU frequency translation statistics

      Default CPUFreq governor (userspace)  --->

<*>   'performance' governor

<*>   'powersave' governor

---   'userspace' governor for userspace frequency scaling

<*>   'ondemand' cpufreq policy governor

<*>   'conservative' cpufreq governor

---   CPUFreq processor drivers

< >   AMD Opteron/Athlon64 PowerNow!

< >   Intel Enhanced SpeedStep (deprecated)

<*>   ACPI Processor P-States driver

---   shared options 

[*]   /proc/acpi/processor/../performance interface (deprecated)

```

Gra i bucy, na kernelu 2.6.23-gentoo-r4

Cpufrequtils w runlevelu default.

----------

## kreon28

Nie czaje tego...znowu jest źle

```
#cpuspeedy high

cpuspeedy: error: ERROR_NO_INTERFACE

If you are running a v2.5/2.6 kernel, please make sure that:

  - That you have the core cpufreq and cpufreq-userspace modules

    compiled or loaded into the kernel.

  - The you have sysfs mounted /sys

  - That you have the cpufreq driver for your cpu loaded.

```

----------

## lmmsci

Jesteś pewien, że zmieniłeś w konfiguracji kernela 

 *Quote:*   

> Default CPUFreq governor (performance) --->

 

na 

 *Quote:*   

> Default CPUFreq governor (userspace)  --->

 

???

Bo to wygląda tak, jakbyś nie miał ustawionego odpowiednioga zarządcy (governor).

Jeśli kompilowałeś jądro z modułami to podeślij 

```
lsmod
```

----------

## kreon28

 *lmmsci wrote:*   

> Jesteś pewien, że zmieniłeś w konfiguracji kernela 
> 
>  *Quote:*   Default CPUFreq governor (performance) ---> 
> 
> na 
> ...

 

Jako moduł poszło tylko

```
ACPI Processor P-States driver 
```

```
xt_TCPMSS               7424  1

ipv6                  213028  281

it87                   15760  0

hwmon_vid               5760  1 it87

i2c_isa                 6528  1 it87

snd_seq_midi            9376  0

snd_emu10k1_synth       9088  0

snd_emux_synth         27904  1 snd_emu10k1_synth

snd_seq_virmidi         8448  1 snd_emux_synth

snd_seq_midi_emul       7808  1 snd_emux_synth

snd_pcm_oss            35360  0

snd_mixer_oss          16640  1 snd_pcm_oss

snd_seq_oss            28160  0

snd_seq_midi_event      7680  3 snd_seq_midi,snd_seq_virmidi,snd_seq_oss

snd_seq                36432  8 snd_seq_midi,snd_emux_synth,snd_seq_virmidi,snd_seq_midi_emul,snd_seq_oss,snd_seq_midi_event

fuse                   37140  4

nvidia               5811568  34

parport_pc             32740  0

parport                26568  1 parport_pc

pcspkr                  5888  0

snd_emu10k1           107456  5 snd_emu10k1_synth

snd_rawmidi            18336  3 snd_seq_midi,snd_seq_virmidi,snd_emu10k1

snd_ac97_codec         76196  1 snd_emu10k1

ac97_bus                5376  1 snd_ac97_codec

snd_pcm                52484  5 snd_pcm_oss,snd_emu10k1,snd_ac97_codec

snd_seq_device          8844  7 snd_seq_midi,snd_emu10k1_synth,snd_emux_synth,snd_seq_oss,snd_seq,snd_emu10k1,snd_rawmidi

snd_timer              18436  3 snd_seq,snd_emu10k1,snd_pcm

snd_page_alloc         10504  2 snd_emu10k1,snd_pcm

snd_util_mem            5888  2 snd_emux_synth,snd_emu10k1

snd_hwdep              10116  2 snd_emux_synth,snd_emu10k1

snd                    34660  19 snd_emux_synth,snd_seq_virmidi,snd_pcm_oss,snd_mixer_oss,snd_seq_oss,snd_seq,snd_emu10k1,snd_rawmidi,snd_ac97_codec,snd_pcm,snd_seq_device,snd_timer,snd_hwdep

soundcore               8032  1 snd

i2c_viapro             10004  0

emu10k1_gp              6528  0

8139cp                 20480  0

gameport               12808  2 emu10k1_gp

8139too                22912  0

mii                     7168  2 8139cp,8139too

i2c_core               17408  4 it87,i2c_isa,nvidia,i2c_viapro

via_agp                10624  1

agpgart                22868  2 nvidia,via_agp

tg3                    93316  0

e1000                  96192  0

nfs                    94272  0

lockd                  50440  1 nfs

sunrpc                118012  2 nfs,lockd

raid10                 22784  0

raid456               115984  0

xor                    16136  1 raid456

raid1                  22400  0

raid0                  10496  0

md_mod                 62100  4 raid10,raid456,raid1,raid0

dm_bbr                 13984  0

dm_snapshot            16676  0

dm_mirror              19840  0

dm_mod                 40768  3 dm_bbr,dm_snapshot,dm_mirror

scsi_wait_scan          4864  0

pdc_adma                9860  0

sata_mv                17544  0

ata_piix               13956  0

ahci                   18948  0

sata_qstor             10244  0

sata_vsc                9860  0

sata_uli                8836  0

sata_sis               10244  0

sata_sx4               13444  0

sata_nv                17540  0

sata_via               12036  0

sata_svw                9092  0

sata_sil24             14084  0

sata_sil               11528  0

sata_promise           12420  0

pata_sis               13060  1 sata_sis

libata                 81076  16 pdc_adma,sata_mv,ata_piix,ahci,sata_qstor,sata_vsc,sata_uli,sata_sis,sata_sx4,sata_nv,sata_via,sata_svw,sata_sil24,sata_sil,sata_promise,pata_sis

sbp2                   20488  0

ohci1394               31152  0

ieee1394               59704  2 sbp2,ohci1394

sl811_hcd              13184  0

ohci_hcd               19716  0

ehci_hcd               27404  0

```

----------

## Qlawy

wybacz OT, ale masz straszny śmietnik z modułami   :Shocked:  jak to jest zasługa genkernela to faktycznie jest on dziełem szatana   :Confused:  3/4 modułów jakie wyświetla Ci lsmod jest Ci zbędna

----------

## kreon28

 *Qlawy wrote:*   

> wybacz OT, ale masz straszny śmietnik z modułami   jak to jest zasługa genkernela to faktycznie jest on dziełem szatana   3/4 modułów jakie wyświetla Ci lsmod jest Ci zbędna

 

Nie ma co przepraszac   :Smile:  Trzeba działać - masz pomysly?

----------

## Qlawy

nie wiem jaki masz sprzęt, ale po co Ci te wszystkie kontrolery sata? albo moduły dotyczące RAID, naprawdę tego używasz? poza tym po co via_agp? FirweFire tez używasz? ipv6? (masz dostęp do internet2?  :Wink:  ) Kilku modułów nie znam, ale jak mówie nie wiem nawet jaki masz sprzęt. Generalnie skompiluj kernel ręcznie i zostaw w nim tylko to co Ci jest potrzebne, czyli jak masz kontroler sata to ustaw tylko jeden, a nie wszystkie, sieciówki tez nie wszystkie dawaj tylko te co masz... itd...moze się zdażyć, że coś nie zadziała raz, drugi, trzeci, ale nie będziesz miał  tysiąca modułów które Ci są niepotrzebne, no i spróbuj z nowszym jakiejm, stabilne jest już przecież .23-r5 zawsze to na czystych źródłach mniejsza szansa ze coś się źle skompiluje  :Wink: 

----------

## SlashBeast

Pomysł prosty, zrób kernel pod Twój sprzęt, tylko to co masz/używasz.

----------

## kreon28

Szczerze mówiąc to chciałbym się zabrać za to od początku a początek jest taki, że nie mogę prawidłowo skompilować kernel'a bo brakuje mi modułów do cpuspeedy i do mobloc'a

----------

