Ménage dans le kernel

Lorsqu'on compile un nouveau kernel avec des noveau modules, ceux-ci ont des noms arbitraire, souvent défini par leur créateur.
Mais lorsqu'on compile un noveau kernel, avec pleins de nouveau modules à des fins de tests, on se retrouve souvent avec une myriade de modules dont on ne sais plus à quoi ils corréspondent.

yoda@elonia:~$ modprobe 
8390                i810                pcnet_cs            snd-seq-dummy
ac                  i82092              pcspkr              snd-seq-midi
acpi                ide-cs              ppp_async           snd-seq-midi-event
apm                 isofs               ppp_deflate         snd-seq-oss
battery             joydev              ppp_generic         snd-timer
bsd_comp            lirc_dev            processor           soundcore
button              lirc_sir            scsi_mod            sr_mod
cpuid               lm90                scx200_acb          sunrpc
crc32               lockd               sd_mod              tcic
ds                  loop                sg                  thermal
eepro100            microcode           slhc                toshiba_acpi
ehci-hcd            mii                 smbfs               udf
evdev               msr                 snd                 uhci-hcd
exportfs            net2280             snd-ac97-codec      usb-storage
ext2                nfs                 snd-intel8x0        usbcore
fan                 nfsd                snd-mixer-oss       usbhid
fat                 nls_cp437           snd-mpu401-uart     usblp
firmware_class      nls_cp850           snd-page-alloc      usbserial
g_serial            nls_iso8859-1       snd-pcm             vfat
i2c-algo-bit        nls_iso8859-15      snd-pcm-oss         yenta_socket
i2c-algo-pcf        nls_utf8            snd-rawmidi         zlib_deflate
i2c-core            nvidia              snd-rtctimer        zlib_inflate
i2c-dev             nvram               snd-seq             
i2c-sensor          pcmcia_core         snd-seq-device

Certains sont assez éxplicite pour savoir à quoi ils corréspondent, mais certains beaucoup moins. C'est par éxemple le cas de 8390, scx200_acb, net2280, lm90 ... Pourtant modinfo est là pour nous expliquer en quelques lignes, certes, mais desfois ces informations sont assez légeres, et on a pas avancé.
Certains par contre on sait tout de suite à quoi ils corréspondent. snd-* c'est tout ce qui est pour le son, ppp_ c'est pour les liaisons point a point.
Il faudrai classer les modules, en les préfixant de la catégorie auquel ils appartiennent. Cela aurait des inconvéniants, cela rallongerai les noms, mais au profit d'un repérage beaucoup plus rapide.

yoda@elonia:~$ modprobe 
net_8390            drm_i810            pcmcia_pcnet_cs     snd-seq-dummy
acpi_ac             pcmcia_i82092       pcspkr              snd-seq-midi
acpi                pcmcia_ide-cs       ppp_async           snd-seq-midi-event
apm                 fs_iso              ppp_deflate         snd-seq-oss
acpi_battery        joy_dev             ppp_generic         snd-timer
ppp_bsd_comp        lirc_dev            processor           soundcore
acpi_button         lirc_sir            scsi_mod            scsi_sr_mod
cpu_id              i2c_lm90            scx200_acb          net_sunrpc
net_crc32           fs_lockd            sd_mod              pcmcia_tcic
pcmcia_ds           fs_loop             scsisg              acpi_thermal
net_eepro100        firm_microcode      ppp_slhc            acpi_toshiba
usb_ehci-hcd        net_mii             fs_smbfs            fs_udf
input_evdev         proc_msr            snd                 usb_uhci-hcd
fs_exportfs         usb_net2280         snd-ac97-codec      usb-storage
fs_ext2             fs_nfs              snd-intel8x0        usb_core
acpi_fan            fs_nfsd             snd-mixer-oss       usb_hid
fs_fat              nls_cp437           snd-mpu401-uart     usb_lp
firmware_class      nls_cp850           snd-page-alloc      usb_serial
usb_g_serial        nls_iso8859-1       snd-pcm             fs_vfat
i2c-algo-bit        nls_iso8859-15      snd-pcm-oss         pcmcia_yenta_socket
i2c-algo-pcf        nls_utf8            snd-rawmidi         zlib_deflate
i2c-core            gfx_nvidia          snd-rtctimer        zlib_inflate
i2c-dev             ??_nvram            snd-seq             
i2c-sensor          pcmcia_core         snd-seq-device

Maintenant on vois directement à quoi ils servent ces modules. Après si ont ne sais toujours pas ce que c'est i2c, un petit google ou dans la doc dans le kernel sa peut pas faire de mal ;p
Voilà c'était mon idée.
PS: Il y a sans doute des erreurs dans le classement des modules, mais c'est pour l'idée quoi.

Haut de page