bonjour,
je suis sous slackware 10.0, avec le noyau bare.i et tout en standard quoi
mon problème est que lorsque j'insère une clef usb (j'ai pour l'instant essayé avec 2 différentes), le système se freeze complètement.
je pense que ça vient du script /etc/rc.d/rc.hotplug, puisque si je fais "/etc/rc.d/rc.hotplug stop", le branchage de la clef ne crée plus de problème, de plus si je relance le module "modprobe usb-ohci", je peux la monter et y accéder!
alors mes questions sont les suivantes:
quelqu'un a-t-il déjà eu le même problème?
comment je peux résoudre ça? (au pire je désactive le hotplug mais je préférerais juste une modification du rc.hotplug ou usb.agent)
merci d'avance
# My 2 cents
Posté par jerome (site web personnel) . Évalué à 2.
De plus, ce n'est pas vraiment avec usb-ohci que tu peux accèder à la clé pour la monter mais avec usb-storage et sd_mod ...
Vérifie que sysfs est bien monté (/sys) à tout hasard ...
[^] # Re: My 2 cents
Posté par abraxas . Évalué à 1.
les modules pour l'usb sont désinsérés par un appel à /etc/rc.d/rc.hotplug stop et réinsérés avec start. (effectivement, ils sont insérés dans /etc/hotplug/usb.agent, appelé par usb.rc, appelé par rc.hotplug).
donc je ne comprends pas pourquoi, si les même modules sont insérés (avec modprobe usb-storage je fais à peu près la même chose que le script non?) ça plante dans le cas avec hotplug.
J'ai également essayé avec un pas usb-storage (c-à-d une souris usb), et j'ai le même résultat
pour le sysfs le répertoire /sys existe mais rien dedans et mount ne le mentionne pas (->pas monté)
merci
[^] # Re: My 2 cents
Posté par JaguarWan . Évalué à 1.
/sys sysfs defaults 0 0
Ca peut regler le problème.
# rectificatif
Posté par abraxas . Évalué à 1.
finalement il semblerait que le hotplug et le modprobe usb-storage ne soient pas identiques
j'ai fait les commandes suivantes:
lsmod >res1.txt
/etc/rc.d/rc.hotplug stop
lsmod >res2.txt
modprobe usb-storage
lsmod >res3.txt
diff res1.txt res2.txt donne:
2,4d1
< usb-ohci 19240 0 (unused)
< ehci-hcd 17580 0 (unused)
< usbcore 59308 1 [usb-ohci ehci-hcd]
alors que diff res2.txt res3.txt donne:
1a2,3
> usb-storage 66176 0 (unused)
> usbcore 59308 0 [usb-storage]
d'où ma conclusion: c'est ou usb-ohci ou ehci-hcd qui plante
comme je l'ai dit dans mon premier post, modprobe usb-ohci + branchement de la clef ne provoque pas de plantage, donc c'est surement l'ehci-hcd
j'ai fait quelques tests, et sur les deux controlleurs usb que j'ai (1.0 et 2.0 ou 1.1 et 2.0 je sais plus trop), ça marche avec ohci
donc je voudrais virer l'ehci. malheureusement je n'y arrive pas.
/etc/hotplug/usb.rc contient ça:
...
modprobe -q usbcore >/dev/null 2>&1
...
# "new style" HCDs ... more common code
#modprobe -q ehci-hcd >/dev/null 2>&1
#modprobe -q ohci-hcd >/dev/null 2>&1
#modprobe -q uhci-hcd >/dev/null 2>&1
# "old style" HCDs ... more driver-specific bugs
modprobe -q usb-ohci >/dev/null 2>&1
# NOTE: this prefers "uhci"; you may prefer "usb-uhci".
# modprobe -q usb-uhci >/dev/null 2>&1 || modprobe -q uhci >/dev/null 2>&1
#modprobe -q uhci >/dev/null 2>&1 || modprobe -q usb-uhci >/dev/null 2>&1
...
c'est moi qui ai rajouté les commentaires devant certains modprobe:
dans la partie new style, j'ai commenté l'ehci parce que je ne le veux pas, et les deux autres parce qu'ils n'existent pas (j'ai testé avec modprobe).
j'ai aussi enlevé l'uhci.
je fais stop-start du hotplug, mais l'ehci-hcd revient!
un pti coup d'oeil dans les dépendances des modules montre que rien ne dépend de l'ehci-hcd, donc s'il est lancé, 'est directement, et je ne vois cet apel nul part!
merci à quiconque pourrait m'aider
[^] # Re: rectificatif
Posté par abraxas . Évalué à 1.
mount: fs type sysfs not supported by kernel
merci quand même
[^] # Re: rectificatif
Posté par abraxas . Évalué à 1.
j'ai découvert l'usage /etc/hotplug/blacklist ;)
j'ai rajouté ehci-hcd et hop! tout marche
merci à vous deux
[^] # Re: rectificatif
Posté par jerome (site web personnel) . Évalué à 2.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.