Автор Тема: Модул e1000e за 2.6.21-xen...  (Прочетена 2445 пъти)

abscent

  • Напреднали
  • *****
  • Публикации: 123
  • Distribution: Gentoo
  • Window Manager: KDE
  • lamy lazer
    • Профил
Модул e1000e за 2.6.21-xen...
« -: Mar 20, 2009, 11:37 »
Здравейте!
Срещам трудности при компилирането на модул за управлението на мрежовата карта, която е вградена на дъното, а трябва да я ползвам :). Ситуацията е следната - инсталирам dom0 на gentoo, версия на ядрото 2.6.21 (няма по-висока версия в portage  :D), но там липсва поддръжка за този модел мрежова карта. След кратко търсене и консултация с google се оказа, че модула не се казва e1000 - коректното му име е e1000e. Изтеглих от сайта на интел (производителя на дъното) пакета с изходния код за компилирането му, но при опит за такова :) на модула показва:
Код
GeSHi (Bash):
  1. laughter src # make CFLAGS_EXTRA=-DCONFIG_E1000E_SEPARATE_TX_HANDLER CFLAGS_EXTRA=-DDISABLE_PCI_MSI CFLAGS_EXTRA=-DE1000E_NO_NAPI install
  2. /usr/bin/make -C /lib/modules/2.6.21-xenH/build SUBDIRS=/usr/local/src/e1000e-0.5.11.2/src modules
  3. make[1]: Entering directory `/usr/src/linux-2.6.21-xen'
  4.  CC [M]  /usr/local/src/e1000e-0.5.11.2/src/netdev.o
  5. /usr/local/src/e1000e-0.5.11.2/src/netdev.c: In function ‘e1000_probe’:
  6. /usr/local/src/e1000e-0.5.11.2/src/netdev.c:5522: error: ‘struct dev_pm_info’ has no member named ‘should_wakeup’
  7. make[2]: *** [/usr/local/src/e1000e-0.5.11.2/src/netdev.o] Error 1
  8. make[1]: *** [_module_/usr/local/src/e1000e-0.5.11.2/src] Error 2
  9. make[1]: Leaving directory `/usr/src/linux-2.6.21-xen'
  10. make: *** [default] Error 2
  11.  
и това е при по-усложнения вариант, не че
Код
GeSHi (Bash):
  1. make install
работи.... Тъй като не разбирам от програмиране (при все че ползвам gentoo  ;D), искам да помоля за помощ.... Предполагам, съм изключил нейде някоя поддръжка на нещо-си-в-ядрото, но като не знам кое и какво...
Благодаря предварително!
Активен

Deeply in love with......Gentoo

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Модул e1000e за 2.6.21-xen...
« Отговор #1 -: Mar 20, 2009, 12:37 »
include/linux/pm.h:

Код:
struct dev_pm_info {
        pm_message_t            power_state;
        unsigned                can_wakeup:1;
#ifdef  CONFIG_PM
        unsigned                should_wakeup:1;
        pm_message_t            prev_state;
        void                    * saved_state;
        struct device           * pm_parent;
        struct list_head        entry;
#endif
};

...

kernel/power/Kconfig:

Код:
config PM
        bool "Power Management support"
        depends on !IA64_HP_SIM
        ---help---
          "Power Management" means that parts of your computer are shut
          off or put into a power conserving "sleep" mode if they are not
          being used.  There are two competing standards for doing this: APM
          and ACPI.  If you want to use either one, say Y here and then also
          to the requisite support below.

          Power Management is most important for battery powered laptop
          computers; if you have a laptop, check out the Linux Laptop home
          page on the WWW at <http://www.linux-on-laptops.com/> or
          Tuxmobil - Linux on Mobile Computers at <http://www.tuxmobil.org/>
          and the Battery Powered Linux mini-HOWTO, available from
          <http://www.tldp.org/docs.html#howto>.

          Note that, even if you say N here, Linux on the x86 architecture
          will issue the hlt instruction if nothing is to be done, thereby
          sending the processor to sleep and saving power.


Те тва е.
Активен

"Knowledge is power" - France is Bacon

abscent

  • Напреднали
  • *****
  • Публикации: 123
  • Distribution: Gentoo
  • Window Manager: KDE
  • lamy lazer
    • Профил
Re: Модул e1000e за 2.6.21-xen...
« Отговор #2 -: Mar 20, 2009, 13:40 »
Така.... Мисля, че разбрах къде ще да е проблема, но не и как да го разреша - gat3way ме е надценил доста :), рових малко по въпросния гърмящ файл (netdev.c), но след редакцията му от моя страна грешките станаха още повече... Искам да помоля за още малко търпение и помощ - да не би да трябва да изключа поддръжката на power management ? (макар да пише, че това не разрешава проблема...)
Активен

Deeply in love with......Gentoo

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Модул e1000e за 2.6.21-xen...
« Отговор #3 -: Mar 20, 2009, 14:05 »
Не, не пипай сорса :)

Активен

"Knowledge is power" - France is Bacon

abscent

  • Напреднали
  • *****
  • Публикации: 123
  • Distribution: Gentoo
  • Window Manager: KDE
  • lamy lazer
    • Профил
Re: Модул e1000e за 2.6.21-xen...
« Отговор #4 -: Mar 20, 2009, 14:29 »
'Мчи то реално погледнато и двете неща са сорс :D - било на ядро, било на отделния драйвер... Чини ми се че вдянах де :) -да видим, дано следващия път да черпя с виртуална бира....
Активен

Deeply in love with......Gentoo

abscent

  • Напреднали
  • *****
  • Публикации: 123
  • Distribution: Gentoo
  • Window Manager: KDE
  • lamy lazer
    • Профил
Re: Модул e1000e за 2.6.21-xen...
« Отговор #5 -: Mar 20, 2009, 15:13 »
Поне това което аз правих като прекомпилация на два пъти на ядрото, не се получи - т.е. спрях cpu frequency scaling и някои неща на ACPI... Ще се радвам на някаква конкретика в помощта, не точно подбутване отстрани и подмятане /нищо лично към другия участник досега в темата/
Благодаря предварително!
Активен

Deeply in love with......Gentoo

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Модул e1000e за 2.6.21-xen...
« Отговор #6 -: Mar 20, 2009, 15:20 »
ACPI няма отношение към нещата, нито frequency scaling-a. Сега не знам точно къде в кое подменю се намира въпросната настройка.

Що не пробваш да влезеш в директорията със сорса на ядрото, да набиеш:

echo "CONFIG_PM=y" >> .config

и после да го компилираш и инсталираш отново. След това рестарт и пробвай да си компилираш драйвера наново.
Активен

"Knowledge is power" - France is Bacon

abscent

  • Напреднали
  • *****
  • Публикации: 123
  • Distribution: Gentoo
  • Window Manager: KDE
  • lamy lazer
    • Профил
Re: Модул e1000e за 2.6.21-xen...
« Отговор #7 -: Mar 20, 2009, 16:22 »
Чак на второто компилиране се усетих да пробвам дали резултата от echo-то седи, и видях, че липсва..., респективно ядрото няма поддръжка за powermanagement,  сега ще пробвам в menuconfig къде точно се активира CONFIG_PM-a, и от какво зависи - ако успея, ще опиша. Благодаря много за помощта!
Активен

Deeply in love with......Gentoo

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Модул e1000e за 2.6.21-xen...
« Отговор #8 -: Mar 20, 2009, 16:38 »
Хм, това е странно. Да не би да пускаш след echo-to нещо от сорта на make config/menuconfig/xconfig ?
Активен

"Knowledge is power" - France is Bacon

abscent

  • Напреднали
  • *****
  • Публикации: 123
  • Distribution: Gentoo
  • Window Manager: KDE
  • lamy lazer
    • Профил
Re: Модул e1000e за 2.6.21-xen...
« Отговор #9 -: Mar 20, 2009, 17:13 »
Определено не :). Поне ядра съм компилирал доста, и то покрай това dom0 - още повече. Gentoo си има собствен инструмент за компилиране на ядрото (genkernel), в случая го пренебрегнах, и заложих на метода, който предложи ти - направо тръгнах с make, след echo-то - не помогна. Почти се отказах от тази версия на ядрото, намерих едни неофициални ebuilds, да видим дали някое от тези ядра ще понечи да тръгне :D...
« Последна редакция: Mar 20, 2009, 17:15 от abscent »
Активен

Deeply in love with......Gentoo

abscent

  • Напреднали
  • *****
  • Публикации: 123
  • Distribution: Gentoo
  • Window Manager: KDE
  • lamy lazer
    • Профил
РЕШЕН: Модул e1000e за 2.6.21-xen...
« Отговор #10 -: Mar 26, 2009, 13:54 »
След неколкократни опити за компилация на ядро 2.6.21, преминах на 2.6.27 (неофициален ebuild, естествено :)), където се реши проблема с драйвера. Оказа се невъзможно да се включи поддръжка за Power Management ако е избрано ядрото да е XEN (т.е. CONFIG_X86_64_XEN=y) - просто двете неща са взаимно изключващи се, а на мен все пак ми трябва xen-опцията....
Нека да решим темата и проблема за приключени, ако някой иска конфиг-а - да свирка :)
Активен

Deeply in love with......Gentoo