From: Juergen Bausa <Juergen.Bausa@web.de>
To: linux-hotplug@vger.kernel.org
Subject: Re: udev remove problems
Date: Tue, 28 Aug 2007 19:48:15 +0000 [thread overview]
Message-ID: <1540969704@web.de> (raw)
In-Reply-To: <1531272489@web.de>
> -----Ursprüngliche Nachricht-----
> Von: "Kay Sievers" <kay.sievers@vrfy.org>
> Gesendet: 27.08.07 00:10:33
>
> On 8/26/07, Juergen Bausa <Juergen.Bausa@web.de> wrote:
> >
> > > -----Ursprüngliche Nachricht-----
> > > Von: "Kay Sievers" <kay.sievers@vrfy.org>
> > > Gesendet: 26.08.07 00:42:51
> > > An: "Juergen Bausa" <Juergen.Bausa@web.de>
> > >
> > > On 8/26/07, Juergen Bausa <Juergen.Bausa@web.de> wrote:
> > > > udev remove problems
> > > >
> > > > I am using udev 0.105-4 on debian etch. I am trying to setup rules for pvr (hard disk recorder)
> > > > that is connected to my system via usb. Add and remove events should start scripts. The add
> > > > event works fine:
> > > >
> > >
> > > > So, the variable is saved and found on the remove event, but the script isnt called. What is wrong here?
> > >
> > > The string you compare against may not run through the format char
> > > replacement, not sure. Just do ENV{toppy}="?*", or use the
> > > ENV{REMOVE_CMD}="/usr/local ..." which Debian supports. So you don't
> > > need a separate remove rule at all.
>
> > Thanks. I used REMOVE_CMD and the script is called. But now I have the problem, that the
> > remove event appears, when the device is accessed.
> >
> > When I plug in, add is called many times (ca. 5). That is no problem, because my script works
> > only on the first call. The script creates a desktop icon and starts a daemon, that allows me to
> > access my device through a local ftp server. This works without any problem.
> >
> > But when I try to login to the ftp server, which triggers actual transfer to the usb device, the
> > remove event is run and my remove script is called.
> >
> > I have no idea why. Any Hints?
>
> Run "udevmonitor" while doing that. What sequence of events does it show?
>
> It's a pure userspace solution, or does it need a kernel module?
Pure userspace
Here is my udev rule:
ACTION="add", SYSFS{idVendor}="11db", SYSFS{idProduct}="1000", MODE="0660", \
GROUP="toppy", RUN+="/usr/local/bin/tf5000pvr_udev" , ENV{REMOVE_CMD}="/usr/local/bin/tf5000pvr_udev"
And this is what udevmonitor --env says when I plug in the device (I use a very long cable with an usb extender/hub).
As you can see REMOVE_CMD is set in 4 events, although the rule matches only one time (and in this event
REMOVE_CMD is not set). And my Script is also started 4 times.
When I start a connection to the device, I get new add-events. But this is not in the log (the plug-in log is strange enough).
Whats wrong here?
Juergen
lisa:/home/jba# udevmonitor --env
udevmonitor prints the received event from the kernel [UEVENT]
and the event which udev sends out after rule processing [UDEV]
UEVENT[1188329895.114897] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2
SUBSYSTEM=usb
SEQNUM\x1221
PHYSDEVBUS=usb
PHYSDEVDRIVER=usb
UEVENT[1188329895.115060] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/usbdev1.13_ep00
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/usbdev1.13_ep00
SUBSYSTEM=usb_endpoint
SEQNUM\x1222
MAJORD2
MINOR\x12
UEVENT[1188329895.115119] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2:1.0
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2:1.0
SUBSYSTEM=usb
SEQNUM\x1223
PHYSDEVBUS=usb
DEVICE=/proc/bus/usb/001/013
PRODUCTK4/6560/9
TYPE=9/0/2
INTERFACE=9/0/1
MODALIAS=usb:v04B4p6560d0009dc09dsc00dp02ic09isc00ip01
UDEV [1188329895.117488] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2
SUBSYSTEM=usb
SEQNUM\x1221
PHYSDEVBUS=usb
PHYSDEVDRIVER=usb
UDEVD_EVENT=1
DRIVER=usb
UDEV [1188329895.119642] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/usbdev1.13_ep00
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/usbdev1.13_ep00
SUBSYSTEM=usb_endpoint
SEQNUM\x1222
MAJORD2
MINOR\x12
UDEVD_EVENT=1
DEVNAME=/dev/usbdev1.13_ep00
UDEV [1188329895.120830] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2:1.0
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2:1.0
SUBSYSTEM=usb
SEQNUM\x1223
PHYSDEVBUS=usb
DEVICE=/proc/bus/usb/001/013
PRODUCTK4/6560/9
TYPE=9/0/2
INTERFACE=9/0/1
MODALIAS=usb:v04B4p6560d0009dc09dsc00dp02ic09isc00ip01
UDEVD_EVENT=1
UEVENT[1188329895.222791] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2:1.0/usbdev1.13_ep81
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2:1.0/usbdev1.13_ep81
SUBSYSTEM=usb_endpoint
SEQNUM\x1224
MAJORD2
MINOR\x12
UEVENT[1188329895.222885] add@/class/usb_device/usbdev1.13
ACTIONd
DEVPATH=/class/usb_device/usbdev1.13
SUBSYSTEM=usb_device
SEQNUM\x1225
PHYSDEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2
PHYSDEVBUS=usb
PHYSDEVDRIVER=usb
MAJOR\x189
MINOR\x12
UDEV [1188329895.224964] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2:1.0/usbdev1.13_ep81
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2:1.0/usbdev1.13_ep81
SUBSYSTEM=usb_endpoint
SEQNUM\x1224
MAJORD2
MINOR\x12
UDEVD_EVENT=1
DEVNAME=/dev/usbdev1.13_ep81
UDEV [1188329895.258281] add@/class/usb_device/usbdev1.13
UDEV_LOG=3
ACTIONd
DEVPATH=/class/usb_device/usbdev1.13
SUBSYSTEM=usb_device
SEQNUM\x1225
PHYSDEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2
PHYSDEVBUS=usb
PHYSDEVDRIVER=usb
MAJOR\x189
MINOR\x12
UDEVD_EVENT=1
DEVNAME=/dev/bus/usb/001/013
UEVENT[1188329895.528622] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1
SUBSYSTEM=usb
SEQNUM\x1226
PHYSDEVBUS=usb
PHYSDEVDRIVER=usb
UEVENT[1188329895.528916] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/usbdev1.14_ep00
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/usbdev1.14_ep00
SUBSYSTEM=usb_endpoint
SEQNUM\x1227
MAJORD2
MINOR\x13
UEVENT[1188329895.528960] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0
SUBSYSTEM=usb
SEQNUM\x1228
PHYSDEVBUS=usb
DEVICE=/proc/bus/usb/001/014
PRODUCT\x11db/1000/101
TYPE%5/0/0
INTERFACE%5/0/0
MODALIAS=usb:v11DBp1000d0101dcFFdsc00dp00icFFisc00ip00
UEVENT[1188329895.529012] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0/usbdev1.14_ep01
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0/usbdev1.14_ep01
SUBSYSTEM=usb_endpoint
SEQNUM\x1229
MAJORD2
MINOR\x13
UEVENT[1188329895.529050] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0/usbdev1.14_ep82
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0/usbdev1.14_ep82
SUBSYSTEM=usb_endpoint
SEQNUM\x1230
MAJORD2
MINOR\x13
UEVENT[1188329895.529101] add@/class/usb_device/usbdev1.14
ACTIONd
DEVPATH=/class/usb_device/usbdev1.14
SUBSYSTEM=usb_device
SEQNUM\x1231
PHYSDEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1
PHYSDEVBUS=usb
PHYSDEVDRIVER=usb
MAJOR\x189
MINOR\x13
UDEV [1188329895.534118] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1
SUBSYSTEM=usb
SEQNUM\x1226
PHYSDEVBUS=usb
PHYSDEVDRIVER=usb
UDEVD_EVENT=1
DRIVER=usb
UDEV [1188329895.550443] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0
SUBSYSTEM=usb
SEQNUM\x1228
PHYSDEVBUS=usb
DEVICE=/proc/bus/usb/001/014
PRODUCT\x11db/1000/101
TYPE%5/0/0
INTERFACE%5/0/0
MODALIAS=usb:v11DBp1000d0101dcFFdsc00dp00icFFisc00ip00
UDEVD_EVENT=1
UDEV [1188329895.604968] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0/usbdev1.14_ep82
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0/usbdev1.14_ep82
SUBSYSTEM=usb_endpoint
SEQNUM\x1230
MAJORD2
MINOR\x13
UDEVD_EVENT=1
REMOVE_CMD=/usr/local/bin/tf5000pvr_udev
DEVNAME=/dev/usbdev1.14_ep82
UDEV [1188329895.628229] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0/usbdev1.14_ep01
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/1-2.1:1.0/usbdev1.14_ep01
SUBSYSTEM=usb_endpoint
SEQNUM\x1229
MAJORD2
MINOR\x13
UDEVD_EVENT=1
REMOVE_CMD=/usr/local/bin/tf5000pvr_udev
DEVNAME=/dev/usbdev1.14_ep01
UDEV [1188329895.635222] add@/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/usbdev1.14_ep00
UDEV_LOG=3
ACTIONd
DEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1/usbdev1.14_ep00
SUBSYSTEM=usb_endpoint
SEQNUM\x1227
MAJORD2
MINOR\x13
UDEVD_EVENT=1
REMOVE_CMD=/usr/local/bin/tf5000pvr_udev
DEVNAME=/dev/usbdev1.14_ep00
UDEV [1188329895.688520] add@/class/usb_device/usbdev1.14
UDEV_LOG=3
ACTIONd
DEVPATH=/class/usb_device/usbdev1.14
SUBSYSTEM=usb_device
SEQNUM\x1231
PHYSDEVPATH=/devices/pci0000:00/0000:00:0b.1/usb1/1-2/1-2.1
PHYSDEVBUS=usb
PHYSDEVDRIVER=usb
MAJOR\x189
MINOR\x13
UDEVD_EVENT=1
REMOVE_CMD=/usr/local/bin/tf5000pvr_udev
DEVNAME=/dev/bus/usb/001/014
_______________________________________________________________________
Jetzt neu! Schützen Sie Ihren PC mit McAfee und WEB.DE. 3 Monate
kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc\x022220
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
next prev parent reply other threads:[~2007-08-28 19:48 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-25 22:22 udev remove problems Juergen Bausa
2007-08-25 22:42 ` Kay Sievers
2007-08-26 21:46 ` Juergen Bausa
2007-08-26 22:10 ` Kay Sievers
2007-08-28 19:48 ` Juergen Bausa [this message]
2007-08-29 4:26 ` Kay Sievers
2007-08-29 19:32 ` Juergen Bausa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1540969704@web.de \
--to=juergen.bausa@web.de \
--cc=linux-hotplug@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).