GNU/Linux >> Znalost Linux >  >> Linux

Jak odladím modul jádra, ve kterém se zobrazí ukazatel NULL?

Nejprve odladit modul? Jen se podívejte, jestli to můžete načíst do gdb, to by mohlo nasměrujte přímo na čáru, která používá příslušnou proměnnou (nebo blízko ní).

jo, a tento článek by se vám mohl hodit


Jsem jedním z autorů toho patche, omlouvám se, že je tak zabugovaný :)

Obecně při hledání nulových ukazatelů, jako je tento, stačí vložit printks, dokud nenajdu ukazatel, který je null (=0), pak čtu zdrojový kód, dokud nezjistím proč.

V tomto případě však vím, že musíte vypnout konzoli framebufferu, jinak dostanete tuto ošklivou chybu, která se spustí pouze tehdy, když je konzole viditelná. Nebo to může být chyba spuštěná, když odpojíte klávesnici a modul se stále pokouší zapisovat do nyní neplatného bufferu.

Měli byste se podívat na nový kód na githubu, který se právě teď pokouším vyčistit, aby bylo snazší kompilovat s libovolnými jádry, a který obsahuje několik oprav chyb.

Také navštivte naše IRC, #lg4l na freenode.


Linux
  1. Linux – Jak zjistit, kterou verzi Javy v nainstalované složce Java?

  2. Jak mohu použít ioctl() k manipulaci s mým modulem jádra?

  3. Shell - Jak najít adresář nějakého příkazu?

  1. Linux – vzhledem k hash závazku Git, jak zjistit, která verze jádra jej obsahuje?

  2. Jak najít modul jádra pro dané zařízení?

  3. jak najít cestu k linuxovému modulu

  1. Linux – Jak zjistit, který modul poškozuje jádro?

  2. Linux – Jak správně znovu načíst modul jádra?

  3. Jak zjistit, který sériový port se používá?