From mboxrd@z Thu Jan 1 00:00:00 1970 From: md@Linux.IT (Marco d'Itri) Date: Sat, 12 Feb 2005 12:28:33 +0000 Subject: Bug#294123: udev: Bad parsing of regular expressions in *.rules Message-Id: <20050212122833.GA8162@wonderland.linux.it> List-Id: References: <20050208090725.GB7706@wonderland.linux.it> In-Reply-To: <20050208090725.GB7706@wonderland.linux.it> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-hotplug@vger.kernel.org ----- Forwarded message from Ricardo Galli ----- Subject: Bug#294123: Info received (was Bug#294123: udev: Bad parsing of regular expressions in *.rules) Reply-To: Ricardo Galli , 294123@bugs.debian.org Sorry, I didn't see your post, so I'm asnwering a little late. Hope still helps. > > I have the following rule in /etc/udev/rules.d/palm.rules: > > > > BUS="usb", SYSFS{manufacturer}="Palm. Inc.", KERNEL="ttyUSB[024]", > > NAME="%k", SYMLINK="pilot" > > What is that supposed to do? One symlink name for multiple devices? > Every second Palm interface should overwrite this symlink? Palm creates two devices, but only the first one is usable (at least by Kpilot). The only one just blocks the sync software. Another contsraint is that the devices may change over time (depending on other devices). Sometimes may bye ttyUSB0 and 1, but next time ttyUSB2 and ttyUSB3. So only 0 and even numbers are useful, that was solved with the rule, it created a symlink to the even numbered ttyUSB. > > symlink to /dev/ttyUSB1 instead of /dev/ttyUSB0 > > What does: > udevinfo -q all -p /class/tty/ttyUSB0 > > print in the failure case? udevinfo -q all -p /class/tty/ttyUSB0 P: /class/tty/ttyUSB0 N: ttyUSB0 S: pilot udevinfo -q all -p /class/tty/ttyUSB1 P: /class/tty/ttyUSB1 N: ttyUSB1 S: pilot > > By changing to KERNEL="ttyUSB[135]" it creates the right links. > > Hmm, we didn't change anything in the matching logic and it worked for a > long time without any known problems. I expect something different as > the problem. > > Can't you match against some interface attributes in sysfs, which are > telling you which one is the first interface of this device? > > You may compare: > udevinfo -a -p /class/tty/ttyUSB0 > udevinfo -a -p /class/tty/ttyUSB1 > > if you find a difference between both interfaces to match against, that > is not dependent on the kernel device name. I did it but found only the device numbers/Ids: diff usb0 usb1 1,3c1,3 < device '/sys/class/tty/ttyUSB0' has major:minor 188:0 < looking at class device '/sys/class/tty/ttyUSB0': < SYSFS{dev}="188:0" --- > device '/sys/class/tty/ttyUSB1' has major:minor 188:1 > looking at class device '/sys/class/tty/ttyUSB1': > SYSFS{dev}="188:1" 6c6 < looking at the device chain at '/sys/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.0/ttyUSB0': --- > looking at the device chain at '/sys/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.0/ttyUSB1': 8c8 < ID="ttyUSB0" --- > ID="ttyUSB1" -- ricardo galli GPG id C8114D34 http://mnm.uib.es/gallir/ Existen 10 tipos de personas, las que saben binario y otras nueve que no recuerdo ----- End forwarded message ----- -- ciao, Marco ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_ide95&alloc_id396&op=click _______________________________________________ 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