comment bourriner ? [rmmod et device busy] - Installation - Linux et OS Alternatifs
Marsh Posté le 14-01-2003 à 01:34:40
c plutot dans le sens inverse qu'il faut enlever les modules
emu10k1
ac97
sound
soundcore
Marsh Posté le 14-01-2003 à 01:46:48
jcrois que t'as raison en effet ça marche pour cet exemple là!
par contra j'ai un autre truc avec lequel ça marche pas, c ma connexion réseau .... en fait j'arrive pas à savoir ou se trouve mon device, et donc je peux pas faire de fuser mon_device ... c une carte wireless en usb si ça peut aider ...quand je fais rmmod (quand elle est dans un état stupide), j'ai device busty, même si je lui fais un ifconfig eth0 down elle reste busy ... aurais tu une idée de comment retrouver ski l'utilise ?
Marsh Posté le 14-01-2003 à 18:00:22
la question m'intéresse aussi, mais dans le cas où les modules sont dans un des ces 2 états : deleted ou initializing (ou initiating, je sais plus)
bref deleted je l'ai quand le rmmod s'est carrément gauffré (emu10k1 parfois le fait), sinon l'initializing quand le module est bon mais n'arrive pas à finir de se charger (genre bttv pour ma carte TV)
Marsh Posté le 20-01-2003 à 05:04:25
un p'tit up
bttv encore planté en initializing
quelqu'un sait comment virer un module dans cette état ?
Marsh Posté le 20-01-2003 à 10:09:17
J'ai déja eu le pb du module bloqué en "initialising" avec un modprobe manuel ...
Seule solution: charger le module automatiquement au démarrage du PC (mettre les noms des modules dans /etc/modules , sous Mandrake 9).
Par contre pour ce qui est du déchargement de module ...
Marsh Posté le 20-01-2003 à 10:20:34
[Albator] a écrit : |
... reboot. C'est la seule solution que j'aie trouve pour ce probleme
Marsh Posté le 20-01-2003 à 10:30:29
Il semblerait ke le prochain noyau (2.6) pourra résoudre ce pb, justement...
Marsh Posté le 20-01-2003 à 11:06:32
oui, le 2.5 inclu le force unload, parce que là j'ai dû rebooter 5 fois une machines en testant les options du module bttv qui correspondaient le mieux à ma carte
Marsh Posté le 20-01-2003 à 14:01:05
et sinon, petêtre que c aussi important:
eskia un moyen de lister tout ce qui utilise un module en particulier ? par exemple quand il dit (Used by 2) eskil ya une façon de savoir quels sont ces fameux deux ?
car dans ce cas là, si c'était des applis, il suffirait de les tuer, et si c'était des modules dépendants, je les déchargerai avant via une ptite boucle récursive ...
bref c vachement important pour moi de savoir ça, car mon ordi malheuresement se disconnect du net et le seul moyen de le reconnecter c en déchargeant et rechargeant le module qui gère ma carte internet en particulier ....
@l'aide!!!!
Marsh Posté le 20-01-2003 à 17:53:02
le processus eth0 ??? de quoi me parles tu ?
si tu parles de faire dhcpcd -k eth0 ou autre j'ai déjà essayé ...
mais ce que je cherche c de savoir qui c qu'utilise le module!!!
Marsh Posté le 20-01-2003 à 21:30:06
BMOTheKiller a écrit : ps aux | grep eth0 |
[albator@atlantis albator]$ ps axu|grep eth0 |
Je comprends bien à quoi ça sert, mais je comprends pas l'utilité ???
Marsh Posté le 21-01-2003 à 01:41:42
ah oki
bon je disais ça parce que ça aurait pu être une solution, chez moi ça donne ça :
Code :
|
Marsh Posté le 21-01-2003 à 02:07:48
Pour les drivers ALSA, en arretant tout simplement ALSA, les modules s'enlèvent:
sous Debian: /etc/init.d/alsa stop
Et pour le cas où les modules sont utilisés, il faut forcer tout ça en activant une option dans "/etc/alsa/alsa-base.conf"
|
Sur Debian avec ALSA 0.9rc6.
Marsh Posté le 22-01-2003 à 00:16:53
BMOTheKiller a écrit : ps aux | grep eth0 |
|
je comprends pas
Marsh Posté le 22-01-2003 à 12:20:13
attends là, y a un soucis dans ton histoire, c'est quoi ta carte réseau "eth0" ? elle est sur usb ? si oui là je comprends mieux, sinon si c'est une carte pci, c'est normal que tu ne puisses pas décharger le module : c'est pas un module
edit : et si elle est sur usb (module usbvnet ?) tu ne pourras pas non plus le décharger vu qu'il te faudra sûrement d'abord démonter /proc/bus/usb
Marsh Posté le 22-01-2003 à 13:31:01
Moi ce que je comprends pas, c'est à quoi correspond le processus [eth0] que tu as, et que je n'ai pas ? C'est un client dhcp ou quoi ?
Marsh Posté le 22-01-2003 à 13:42:07
je sais pas à quoi il correspond exactement, ça m'indique juste que eth0 est up, sinon je suis en static, mais j'ai ça sur toutes les machines, sûrement une représentation du service network/eth0
Marsh Posté le 22-01-2003 à 14:57:01
BMOTheKiller a écrit : attends là, y a un soucis dans ton histoire, c'est quoi ta carte réseau "eth0" ? elle est sur usb ? si oui là je comprends mieux, sinon si c'est une carte pci, c'est normal que tu ne puisses pas décharger le module : c'est pas un module |
ouais c bel et bien usbvnet ma carte réseau ... c un module de driver GPL que j'ai du pomper car ma carte net wireless n'est pas encore supportée officiellement sous linux ...
ce que j'ai entendu c que HOTPLUG pouvait me sortir du pétrin ... as tu des infos à ce sujet ? sachant que j'ai déjà installé hotplug sur ma machine mais bon je sais pas comment le forcer à faire, par exemple un reset sur les devices pour pouvoir ainsi décharger le bordel
Marsh Posté le 22-01-2003 à 15:35:38
répond au môssieur : ta carte est donc bien connectée sur un port usb ?
(ça va servir pour la suite)
Marsh Posté le 22-01-2003 à 15:41:17
YES usbvnet... cune carte usb wireless, la Netgear MA101
rien qu'en démarrant l'ordinateur et en la mettant en marche elle devient used by 3
je veux trouver une astuce pour pouvoir lui faire éventuellement un RESET mais aidez moi ! je sais pas comment faire
Marsh Posté le 22-01-2003 à 16:03:20
bon alors un truc que tu vas faire :
mount
vois-tu un truc du genre : usbdevfs on /proc/bus/usb type usbdevfs (rw)
sinon le problème est aussi que l'usb est compilé dans le noyau et non en module
Marsh Posté le 22-01-2003 à 17:21:16
BMOTheKiller a écrit : bon alors un truc que tu vas faire : |
je vois bien le
usbdevfs on /proc/bus/usb type usbdevfs (rw)
et sinon j'ai bien UHCI dans le noyau ... voili!
Marsh Posté le 22-01-2003 à 17:49:10
bon, ben normalement, une fois /proc/bus/usb démonté, l'occupation du module de ta carte doit passer à 2
mais je pense pas que tu puisses le démonder directement sans te manger un message "busy"
peut-être en essayant un : service network restart
résoudrait ton problème
Marsh Posté le 22-01-2003 à 17:55:31
humhum .. j'ai pas de commande service ... tu parles d'unscript d'initialisation peut être dans /etc/init.d ? j'ai déjà essayé en faisant net.eth0 stop mais marche pas non plus il reste ncore occupé ...
en fait je cherche un truc peut être plus roots que ça... un truc qui interroge le kernel éventuellement et lui fasse dire pourquoi il dit USED BY ... voilà pouvoir savoir ski bloque le déloadage ...je peux éventuellement killer quoi que ce soit et relancer après .. mais il me faut avoir la liste des USERS OF du module ....?
sinon, en effet quand je rmmod alors qu'il est encore used by, il me dit device is busy
Marsh Posté le 22-01-2003 à 18:10:19
là je parlais pas de rmmod, mais de : umount /proc/bus/usb
ça c'est pratiquement sûr que ce soit une source d'occupation du module
mais bon ce qui n'est pas pratique c'est que tu as usbcore, usb-uhci en dur
et avec ifconfig tu n'arrives pas non plus à stopper l'interface ?
parce que dans l'ordre ça donnerait en gros :
ifconfig eth0 down
umount /proc/bus/usb
reste à voir ce qui pourrait encore l'occuper
Marsh Posté le 23-01-2003 à 10:19:50
up!
j'ai constaté un truc assez pathétique
des fois si je joue en faisant des ifconfig up down etc... je passes à used by -2 et du coup quand je modprobe mon pc freeze;
bref j'ai l'impression que les drivers fouttent la merde en se chargeant et déchargeant, et faussent le chiffre used by; donc caca
eske kelkun peut me donner un coup de main pour réussir à faire mon bonheur ?
Marsh Posté le 23-01-2003 à 11:43:57
tu devrais utiliser hotplug c'est plus simple.
tu débranche ta carte reseau usb.
tu commente dans ton /etc/fstab la ligne du genre mount /proc/bus/usb ...
tu installe hotplug, tu redemarre et tu branche tes périph usb (hotplug se charge de les monter)
ensuite pour décharger le module de ta carte réseau, tu fais un down sur ta carte, tu arrete le service reseau et tu arrete hotplug : /etc/init.d/hotplug stop ou service hotplug stop (suivant ta distrib)
Et là tu devrait pouvoir faire un rmmod sur ton module sans te faire jeter
PS : au boot si ton linux démarre le réseau avant hotplug tu va avoir une chtite erreur du genre interface non trouvée, mais c'est pas grave ...
Marsh Posté le 23-01-2003 à 14:40:25
bin en fait je suis sous gentoo ...
mon service hotplug dépend du service modules, qui se charge de lancer chacun des modprobe qui se trouvent dans modules.autoload ..
ce qui veut dire que mon modules usbvnet se charge avant le service hotplug...
et donc je ne sais pas comment je pourrai bien faire ...
en fait ske j'aimerais, vu que apparemment c hotplug qui peut me sauver ?, c'est savoir comment faire que hotplug gère efficacement mon usb .. j'aimerais par exemple que hotplug reinitialise s'il faut unn périphérique USB, en lui envoyant par exemple un signal reset et du coup queje puisse re modprober sans me faire casser ..
Marsh Posté le 07-02-2004 à 21:07:36
Avec le 2.6 , c'est simple , il suffir de faire rmmod -f . Encore faut - il avoir mis l'option dans le kernel
|
J'ai essayé et ca marche . Mais c'est a utilisé avec précaution .
Marsh Posté le 07-02-2004 à 23:16:10
ouep je suis tjs en 2.4 et j'ai un module busy et j'ai pas envie de rebooter. Une solution ?
Marsh Posté le 07-02-2004 à 23:22:20
c'est quoi comme module ? si le périphérique est accessible par un dev, tu peux te tenter un fuser ou lsof sur le dev en question, ensuite tu regardes ce qui l'occupe avec "ps aux | grep LE_PID"
Marsh Posté le 07-02-2004 à 23:26:01
en fait j'ai tjs du son avec xmms ou mplayer mais pas avec Enemy Territory
Ca arrive de temps en temps alors que le son fonctionne bien sous ce jeu.
Marsh Posté le 07-02-2004 à 23:27:08
par exemple
<-=[ ~ ]=-> fuser /dev/dsp
/dev/dsp: 3737
<-=[ ~ ]=-> ps -A | grep 3737
3737 ? 00:02:45 artsd
reste plus qu'à killer ou terminer correctement
Marsh Posté le 07-02-2004 à 23:28:18
Lebibi a écrit : en fait j'ai tjs du son avec xmms ou mplayer mais pas avec Enemy Territory |
c'est quel chip/carte ?
Marsh Posté le 14-01-2003 à 00:47:04
hello
j'ai souvent des problèmes avec certains périphériques et la seule façon de contrer ce problème c'est en déloadant reloadant les modules ... donc souvent j'aime bien faire rmmod le_module mais souvent il me dit Device or ressource busy, et du coup la seule façon pitoyable de m'en sortir est e faire un reboot or on m'a toujours dit qu'il était inutile de rebooter un linux que tu pouvais tout faire depuis le bash.. mais là je vois vraiment pas comment faire
par exemple: j'essaye de mettre des nouveaus modules de son, ok ...
[root@kpoman:/etc/runlevels/default]$ lsmod
Module Size Used by Tainted: P
NVdriver 1066592 10 (autoclean)
hid 16868 0 (unused)
input 3200 0 [hid]
tuner 8416 1 (autoclean)
tvaudio 11036 0 (autoclean) (unused)
bttv 62912 0 (unused)
videodev 5440 2 [bttv]
i2c-algo-bit 6568 1 [bttv]
i2c-core 11908 0 [tuner tvaudio bttv i2c-algo-bit]
emu10k1 55656 0
ac97_codec 9288 0 [emu10k1]
sound 51700 0 [emu10k1]
soundcore 3556 7 [emu10k1 sound]
usbvnet 68468 3
vfat 10492 1 (autoclean)
[root@kpoman:/etc/runlevels/default]$
fo donc commencer par virer soundcore puis sound puis ac97 puis finalement emu10k1 ... mais déjà dès le départ il me dit impossible de décharger soundcore bin je me suis dit qu'il ya peut être une appli qui s'en sert ... j'ai fait donc fuser * dans /dev/sound/ j'ai killé l'application potentiellemnt emmerdante, mais même comme ça j'arrive pas à virer le border ... c très ennuyeux ça ... j'arrive pas à savoir USED BY qui ...
eske kelkun peut m'orienter SVP un peu pour pouvoir me débarasser de ces merdes et pouvoir recharger un module comme il faut ?
jai essayé aussi le rmmod -a mais ça marche pas
@ l'aide!!!