# Problem mit Kernel 2.6.1 und Hotplug

## Jörg Brakebusch

Hi,

seitdem ich den 2.6er Kernel installiert habe, mach Hotplug beim herunterfahren Schwierigkeiten, bzw. das System verabschiedet sich mit folgender Meldung:

 *Quote:*   

> 
> 
> * Stopping USB and PCI hotplugging...
> 
> /etc/hotplug/usb.rc: line 365: 29983 Speicherzugriffsfehler  rmmod scanner >/dev/null 2>&1
> ...

 

Habe Hotplug schon unmerged bzw neu installiert, habe auch die "masked"-Version versucht, woran kann es liegen?

Gruß

Jörg

----------

## PrakashP

Das scanner Modul ist buggy. Steig auf libusb um. Es steht nicht um sonst "depreciated" dabei und bald auch "broken".

----------

## Jörg Brakebusch

 *PrakashKC wrote:*   

> Das scanner Modul ist buggy. Steig auf libusb um. ".

 

Danke für die Antwort, ich tue mich im Moment noch etwas schwer mit dem neuen Kernel, libusb - wie mache ich das?

Gruß und Danke

Jörg

----------

## Jörg Brakebusch

Ups, 

man sollte vor dem Schreiben die Suchfunktion verwenden   :Embarassed:  ...

War vorhin etwas im Stress - hab's gefunden.

Danke

Jörg

----------

## Jörg Brakebusch

Hi,

kann mir jemand das mit dem 'libusb' mal erklären?

Ich habe mir schon diesen Thread (https://forums.gentoo.org/viewtopic.php?t=119862&highlight=hotplug+lide+libusb)  angesehen, jedoch funktioniert das bei mir nicht - sprich der Scanner läuft nicht.

Danke

Jörg

----------

## PrakashP

Die "Haudrauf" Methode wäre einfach mal per Hand das entprechende usb device per chmod 660 für den user zugänglich zu machen. Hat bei mir geklappt, ist aberwie gesagt nciht schön.

----------

## zendron

Ich hab den gleichen Mist mit nem HP 4100C.

Nehme ich das Kernel modul läuft der Scanner, hotplug verabschiedet sich aber beim runterfahren ebenfalls mit einem Speicherzugrifssfehler --> System hängt.

Nehme ich libusb erkennt er auch den Scanner mit sane-find-scanner und scanimage -L, aber sobald ich ein scanimage -T (als root) eingebe friert mir die Kiste unter X ein,  in der Konsole hängt der Prozeß und läßt sich nicht abschiessen, beim rebooten hängt das System dann wieder bei Hotplug --> System hängt.

Ich bin schon seit Weihnachten am probieren, habs aufgegeben.

Es hat schon ne Weile gedauert, bis ich herausgefunden habe, dass ich das ehci_hcd module auf meinem Board nicht laden darf, da der scanner sonst überhaupt nicht funktioniert, bzw vom usb

subsystem registriert wird.

----------

## PrakashP

Kannst du mit xsane und libusb als root scannen? Probier einfach mal chmod 660 -R /proc/bus/usb. Dann sollte man als user auch scannen können.

Ich habe das jetzt als user hinbekommen mit hotlplug und script, welches 660 für die Gruppe scanner setzt. Dann den user noch der Gruppe hinzufügen und es ist sauber. Es gibt daszu einen thread hier. EInfach mal nach libusb und hotplug suchen.

----------

## Jörg Brakebusch

Hi,

also irgendwas ist falsch, beim starten von hotplug erhalte ich folgende Fehlermeldung:

 *Quote:*   

> 
> 
> modules.usbmap unparsable line: lide20 0x0003 0x04a9 0x220d 0x0000 0x0000 0x00 0x00 0x00 0x00
> 
> modules.usbmap unparsable line: lide20 0x0003 0x04a9 0x220d 0x0000 0x0000 0x00 0x00 0x00 0x00
> ...

 

Ich tendiere dazu den ursprungszustand wieder herzustellen, da ging der Scanner wenigsten und mit der Fehlermeldung beim shootdown kann ich zu not noch leben...  :Sad: 

Gruß

Jörg

----------

## PrakashP

Klingt nach falscher Datei. Das sollte in usb.usermap rein.

scanner         0x0003  0x04b8  0x010f  0x0000  0x0000  0x00    0x00    0x00    0x00    0x00    0x00    0x00000000

steht bei mir drin.

Darum habe ich in dem dir usb nen script mit Namen scanner. Bei dir sollte das lide20 heißen.

----------

## Jörg Brakebusch

Hi,

ich schein zu blöd zu sein  :Sad: , also habe entsprechende Eintragungen in der usb.usermap vorgenommen und neu gestartet (leider ist nirgens ein Scanner-device zufinden).

Wer kann mir nochmal (für blöde) Schritt für Schritt erklären

- was kommt in den kernel (2.6.1) um den scanner (lide20) aufzurufen (und wie modul oder fest)?

- was muss ich emergen?

- und welche config-dateien muss ich wie editieren?

Tut mir leid, aber ich bin hierbei scheinbar sehr schwer von Begriff  :Rolling Eyes: 

Gruß

Jörg

----------

## PrakashP

Das device wird unter /dev auch nciht auftauchen. Bist du sicher, daß deine Produkt und Hersteller ID übereinstimmen? (die 2. und 3. hex Zahl) Das läßt sich etwa in /proc oder mit diversen frontends (auch lsusb) herausfinden.

Als user sollte sane-find-scanner (oder so) das Ding anzeigen, wenn du alles richtig gemacht hast. Als root sollte es immer gehen.

----------

## Jörg Brakebusch

Hi,

also lsusb liefert:

 *Quote:*   

> 
> 
> Bus 003 Device 002: ID 04a9:220d Canon, Inc. CanoScan N670U/N676U/LiDE 20
> 
> 

 

sane-find-scanner findet keine scanner  :Sad: 

Gruß

Jörg

----------

## PrakashP

Wo ist dein script und was steht da drin?

Da sollte sowas drin stehen:

#!/bin/bash

if [ "${ACTION}" = "add" ] && [ -f "${DEVICE}" ]

then

        chown root "${DEVICE}"

        chgrp scanner "${DEVICE}"

        chmod 660 "${DEVICE}"

fi

(Das Ding auch mittels chmod a+x als root auch ausführbar gemacht?)

Mit usermod dich der scanner Gruppe hinzugefügt?

Neu eingeloggt?

----------

## Jörg Brakebusch

script???

Hey,

davon lese ich nun zum erstenmal - das Problem tritt allerding auch als root auf, daher kann es wohl nicht mit den Rechten zu tun haben, oder?

Gruß

Jörg

(ich will meine 2.4er wieder haben *heul*)

----------

## PrakashP

Du hast libusb aber installiert, ja? Wenn es als root nicht auftaucht, hast du ein Problem. Entweder kennt libusb deinen Scanner nicht oder ich weiß auch nicht mehr...

----------

## PrakashP

Evtl muß in den epson.conf oder plustek.conf eingetragen werden, daß libusb benutzt wird, bzw danach gesucht werden soll. Ich weiß es nicht mehr... ich meine aber nicht, daß das nötig wäre.

Denke ciht, daß es was bringt, aber versuche mal in der obigen Datei statt "lide20" auch scanner einzutragen, wie ich das gemacht habe.Last edited by PrakashP on Tue Feb 03, 2004 10:46 pm; edited 1 time in total

----------

## Jörg Brakebusch

Hallo,

ja libusb ist installiert.

Der Scanner funktioniert mit dem "alten" Kernelmodul problemlos, nur das beim runterfahren die o.g. Fehlermeldung kommt und das Modul "scanner" überholt ist.

Wahrscheinlich mache ich irgendwo einen kleinen, aber wichtigen Fehler  :Sad: .

Vielen Dank für deinen Bemühungen.

Gruß

Jörg

----------

## DPoesl

 *PrakashKC wrote:*   

> Evtl muß in den epson.conf oder plustek.conf eingetragen werden, daß libusb benutzt wird, bzw danach gesucht werden soll. Ich weiß es nicht mehr... ich meine aber nicht, daß das nötig wäre.
> 
> Denke ciht, daß es was bringt, aber versuche mal in der obigen Datei statt "lide20" auch scanner einzutragen, wie ich das gemacht habe.

 

Ich hatte mit Kernel 2.6.1 das gleiche Problem mit dem Scanner-Modul. Mit dem neuen Kernel 2.6.3-rc2 ist es hinfällig. Da gibts dieses Modul schlichtweg gar nicht mehr   :Wink: 

Der Umstieg war bei meinem Epson Stylus CX5200 einfach:

In der Datei /etc/sane.d/epson.conf einfach folgendes ändern:

# USB scanner - only enable this if you have an EPSON scanner. It could

#               otherwise block your non-EPSON scanner from being

#               recognized.

#               Depending on your distribution, you may need either the

#               first or the second entry.

#usb /dev/usbscanner0

#usb /dev/usb/scanner0

usb

Durch das "nackte" usb wird sane mitgeteilt, dass es die libusb anstelle des Devices verwenden soll.

So und jetzt muss ich auch noch die Sache mit den Zugriffsrechten in Griff kriegen  :Sad: 

Viel Spass

  Dieter

----------

## DPoesl

 *DPoesl wrote:*   

> So und jetzt muss ich auch noch die Sache mit den Zugriffsrechten in Griff kriegen  

 

Nachdem ich begriffen hab, was das Script von PrakashKC in Verbindung mit hotplug machen soll, hab ich es bei mir entsprechend eingebunden. Und siehe da es klappt   :Very Happy: 

PrakashKC herzlichen Dank!

----------

## SvenFischer

wo mit eingebunden?

Wäre es nicht eleganter die /etc/sane.d/usb.usermap zu editieren? Wenn ja, dann aber wie?

----------

## DPoesl

 *SvenFischer wrote:*   

> wo mit eingebunden?

 

Der Aufruf des Scripts erfolgt durch die Datei /etc/hotplug/usb.usermap

Mit lsusb ermittelst du die Daten deines Scanners

```

bash-2.05b# lsusb

Bus 003 Device 001: ID 0000:0000

Bus 002 Device 002: ID 04b8:0801 Seiko Epson Corp. Stylus CX5200

Bus 002 Device 001: ID 0000:0000

Bus 001 Device 001: ID 0000:0000

```

Dann trägst du den Namen des Scripts (scanner) match_flag (3) idVendor (04b8) und idProdukt (0801) in die /etc/hotplug/usb.usermap ein. Die restlichen Angaben sollten Null sein. 

```

scanner 0x0003 0x04b8 0x0801 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000

```

Das script scanner muss im Verzeichnis etc/hotplug/usb stehen und ausführbar gemacht werden.

 *SvenFischer wrote:*   

> Wäre es nicht eleganter die /etc/sane.d/usb.usermap zu editieren? Wenn ja, dann aber wie?

 

Ich hab keine Datei /etc/sane.d/usermap auf meinem System. Kann aber davon kommen, dass ich Sane selber kompliliert hab. Der Emerge von sane-backends hat bei mir nicht geklappt. Ich vermute aber, dass die usb.usermap im sane-Verzeichnis ins hotplug-Verzeichnis kopiert gehört. Gibt es denn im sane-Verzeichnis auch ein entsprechendes Script zum Anpassen der Rechte?

----------

