View previous topic :: View next topic |
Author |
Message |
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Mon Apr 19, 2004 12:47 pm Post subject: [modprobe -r] modules inutilisés (impossible avec un 2.6) |
|
|
Comment faire pour que rmmod retire les modules inutilisés automatiquement ??
Dans le man, il est écrit : Quote: | OPTIONS
-a Enlève tous les modules non utilisés. |
Mais lorsque je fais "rmmod -a" il laisse les modules non-utilisés en mémoire.
Si je les supprime un par un, aucun problème, le système ne râle pas.
J'utilise un noyau 2.6.5-gentoo-dev-sources-r1 et j'ai bien activé l'option "CONFIG_MODULE_UNLOAD" mais pas "CONFIG_MODULE_FORCE_UNLOAD".
Est-que que cela pourrait venir de là ??
Je n'ai pas activé cette option parce que je ne veux pas que rmmod supprime les modules chargés automatiquement par hotplug. _________________ La connaissance s'accroît quand on la partage.
JCB
Last edited by yoyo on Tue Apr 20, 2004 12:47 pm; edited 2 times in total |
|
Back to top |
|
|
TheAl Tux's lil' helper
Joined: 22 Jan 2004 Posts: 134
|
Posted: Mon Apr 19, 2004 1:38 pm Post subject: |
|
|
Hum, de quels modules il s'agit ?
Pasque s'il est question de choses montées par devfs (cdrom, floppy, ...) il y a des chances que ce ne soit pas une bonne idée de les virer comme ca.
Sinon, hotplug peut aussi avoir monté des choses que le système ne laisse pas démonter.
Un petit strace du modprobe -r doit donner des infos sur ce qui coince.
slts
TheAl |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Mon Apr 19, 2004 1:52 pm Post subject: |
|
|
TheAl wrote: | Hum, de quels modules il s'agit ? |
Il y a en effet le module floppy, qui n'est pas chargé au démarrage (du moins il me semble) et que je n'utilise pas du tout ("mais pourquoi l'avoir compilé ?" me direz-vous; et bien "parce que !" ).
Mais il y a aussi des modules de codepages (cp) et de langues (nls), des restes de mon dernier plug de clé usb (usb-storage) mais qui n'ont plus rien à faire là ...
Je vais voir ce que donne le strace.
Merci _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Mon Apr 19, 2004 2:43 pm Post subject: |
|
|
Oula !!!
Je ne comprends pas la sortie de strace (je ne connaissait pas ce programme) alors je poste le résultat ici :
Quote: | lsmod
Module Size Used by
floppy 55604 0
usb_storage 26560 0
uhci_hcd 30256 0
usbcore 92956 4 usb_storage,uhci_hcd
sd_mod 15936 0
nvidia 1698476 10
snd_seq_midi 6400 0
snd_via82xx 22240 2
snd_ac97_codec 62340 1 snd_via82xx
snd_mpu401_uart 6144 1 snd_via82xx
snd_rawmidi 20288 2 snd_seq_midi,snd_mpu401_uart
snd_seq_oss 32288 0
snd_seq_midi_event 6080 2 snd_seq_midi,snd_seq_oss
snd_seq 52208 5 snd_seq_midi,snd_seq_oss,snd_seq_midi_event
snd_seq_device 6440 4 snd_seq_midi,snd_rawmidi,snd_seq_oss,snd_seq
snd_pcm_oss 50052 0
snd_pcm 86916 3 snd_via82xx,snd_pcm_oss
snd_page_alloc 8932 2 snd_via82xx,snd_pcm
snd_timer 21860 2 snd_seq,snd_pcm
snd_mixer_oss 17696 2 snd_pcm_oss
snd 47812 14 snd_seq_midi,snd_via82xx,snd_ac97_codec,snd_mpu401_uart,snd_rawmidi,snd_seq_oss,snd_seq_midi_event,snd_seq,snd_seq_device,snd_pcm_oss,snd_pcm,snd_timer,snd_mixer_oss,soundcore 7520 2 snd
nls_cp437 5312 2 |
puis
Quote: | strace modprobe -r
execve("/sbin/modprobe", ["modprobe", "-r"], [/* 49 vars */]) = 0
uname({sys="Linux", node="lvapc14.insa-lyon.fr", ...}) = 0
brk(0) = 0x805a000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40000000
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=98459, ...}) = 0
mmap2(NULL, 98459, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40001000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200>YI"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1491953, ...}) = 0
mmap2(0x4957e000, 1252452, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4957e000
mmap2(0x496aa000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x12b) = 0x496aa000
mmap2(0x496ae000, 7268, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x496ae000
close(3) = 0
munmap(0x40001000, 98459) = 0
open("/dev/urandom", O_RDONLY) = 3
read(3, "+\317*\351<z\254\251\17h\267\375(\335@\254\4\243\336\\"..., 32) = 32
close(3) = 0
create_module(umovestr: Input/output error
0, 0) = -1 ENOSYS (Function not implemented)
uname({sys="Linux", node="lvapc14.insa-lyon.fr", ...}) = 0
fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 25), ...}) = 0
brk(0) = 0x805a000
brk(0x807b000) = 0x807b000
brk(0) = 0x807b000
_exit(0) = ? |
Finalement, le résultat du "modprobe -r" : Quote: | lsmod
Module Size Used by
floppy 55604 0
usb_storage 26560 0
uhci_hcd 30256 0
usbcore 92956 4 usb_storage,uhci_hcd
sd_mod 15936 0
nvidia 1698476 10
snd_seq_midi 6400 0
snd_via82xx 22240 2
snd_ac97_codec 62340 1 snd_via82xx
snd_mpu401_uart 6144 1 snd_via82xx
snd_rawmidi 20288 2 snd_seq_midi,snd_mpu401_uart
snd_seq_oss 32288 0
snd_seq_midi_event 6080 2 snd_seq_midi,snd_seq_oss
snd_seq 52208 5 snd_seq_midi,snd_seq_oss,snd_seq_midi_event
snd_seq_device 6440 4 snd_seq_midi,snd_rawmidi,snd_seq_oss,snd_seq
snd_pcm_oss 50052 0
snd_pcm 86916 3 snd_via82xx,snd_pcm_oss
snd_page_alloc 8932 2 snd_via82xx,snd_pcm
snd_timer 21860 2 snd_seq,snd_pcm
snd_mixer_oss 17696 2 snd_pcm_oss
snd 47812 14 snd_seq_midi,snd_via82xx,snd_ac97_codec,snd_mpu401_uart,snd_rawmidi,snd_seq_oss,snd_seq_midi_event,snd_seq,snd_seq_device,snd_pcm_oss,snd_pcm,snd_timer,snd_mixer_oss
soundcore 7520 2 snd
nls_cp437 5312 2 |
En gros, il n'a rien retiré (et c'est la même chose si je modprobe des modules inutiles et que j'essaie de les "nettoyer" automatiquement). _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
Piaf Tux's lil' helper
Joined: 03 Aug 2003 Posts: 76 Location: Sophia Antipolis
|
Posted: Mon Apr 19, 2004 4:15 pm Post subject: |
|
|
J'ai également remarqué cela il y a quelques jour... il *semblerait* que le -a n'existe plus...
Code: | # rmmod --help
Usage: rmmod [-fhswvV] modulename ...
-f (or --force) forces a module unload, and may crash your
machine. This requires the Forced Module Removal option
when the kernel was compiled.
-h (or --help) prints this help text
-s (or --syslog) says use syslog, not stderr
-v (or --verbose) enables more messages
-V (or --version) prints the version code
-w (or --wait) begins a module removal even if it is used
and will stop new users from accessing the module (so it
should eventually fall to zero).
|
_________________ Est-ce que c'est toi John Wayne, ou est-ce que c'est moi... |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Mon Apr 19, 2004 4:29 pm Post subject: |
|
|
Piaf wrote: | J'ai également remarqué cela il y a quelques jour... il *semblerait* que le -a n'existe plus... |
Curieux ça ...
Il est encore dans le man et ne m'insulte pas lorsque je l'utilise ...
De toute façon, l'utilisation de "modprobe -r" à la place de "rmmod -a" ne résoud pas mon problème ... _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
TheAl Tux's lil' helper
Joined: 22 Jan 2004 Posts: 134
|
Posted: Mon Apr 19, 2004 5:07 pm Post subject: |
|
|
OOps, utilisation de modprobe :
Code: | modprobe -r module_name |
L'avantage d'utiliser modprobe plutôt que rmmod, c'est qu'il tient compte des dépendances (si on enlève un module et que d'autre sont utilisé par ce dernier, il enlève tout).
Et je confirme que l'option -a de rmmod n'existe plus !
De plus, dans 2.6, il n'existe plus de modules "autoclean" qui se déchargent sans utilisation (ce pourquoi le -a était prévu).
Donc, ce qui tu veux faire n'est plus reccomandé.
Slts
--TheAl |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Tue Apr 20, 2004 7:22 am Post subject: |
|
|
TheAl wrote: | De plus, dans 2.6, il n'existe plus de modules "autoclean" qui se déchargent sans utilisation (ce pourquoi le -a était prévu).
Donc, ce qui tu veux faire n'est plus reccomandé. |
Même en mettant : "CONFIG_MODULE_FORCE_UNLOAD" dans mon noyau ??
_________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
TheAl Tux's lil' helper
Joined: 22 Jan 2004 Posts: 134
|
Posted: Tue Apr 20, 2004 12:09 pm Post subject: |
|
|
Selon la doc du noyeau :
Quote: | This option allows you to force a module to unload, even if the
kernel believes it is unsafe: the kernel will remove the module
without waiting for anyone to stop using it (using the -f option to
rmmod). This is mainly for kernel developers and desperate users.
If unsure, say N.
|
Ce qui signifie que cette option permet de forcer la suppression du module, même si le kernel pense utiliser encore de module pour un processus, rien a voir avec un nottoyage automatique des modules.
Encore une fois : En 2.6, il n'est pas prévu de suppression automatique des modules non usités !
Voilà, c'est aussi simple que ca ... |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Tue Apr 20, 2004 12:45 pm Post subject: |
|
|
TheAl wrote: | Encore une fois : En 2.6, il n'est pas prévu de suppression automatique des modules non usités !
Voilà, c'est aussi simple que ca ... |
C'est simple, mais c'est pas cool quand on a peu de ram sur son desktop ... _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
TheAl Tux's lil' helper
Joined: 22 Jan 2004 Posts: 134
|
Posted: Tue Apr 20, 2004 12:56 pm Post subject: |
|
|
Heuu,
Envoie un mail à Linux ou Allan
Et, pkoi pas charger / décharger les modules quand tu en as besoins alors ? |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Tue Apr 20, 2004 1:11 pm Post subject: |
|
|
TheAl wrote: | Et, pkoi pas charger / décharger les modules quand tu en as besoins alors ? |
Parce que seul "root" peut le faire, que j'en ai marre de faire des "su" toutes les 2 minutes et que je n'ai pas trop confiance en sudo pour ce genre de manip (je fais plus attention lorsque mon prompt est rouge; c'est c** mais bon ...).
Et je ne comprends pas pourquoi cette fonctionnalité a été retirée des 2.6 (il y a sûrement une bonne raison, je n'en doute pas ).
TheAl wrote: | Envoie un mail à Linux ou Allan |
Tu as leur adresse ??? (d'ailleurs, c'est Linus et pas Linux ). _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
xr31Daisy Guru
Joined: 19 Jul 2002 Posts: 326 Location: Paris, France
|
Posted: Tue Apr 20, 2004 5:03 pm Post subject: |
|
|
yoyo wrote: | TheAl wrote: | Envoie un mail à Linux ou Allan |
Tu as leur adresse ??? (d'ailleurs, c'est Linus et pas Linux ). |
Ben oui, bien sûr ! En fait, tu peux toujours jeter un oeil à la mailing list de dév du kernel, non ? ( détails sur www.kernel.org ) _________________ #include "pictures.h" |
|
Back to top |
|
|
|
|
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
|
|