[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-hotplug
Subject: Weird race-like problem in udev
From: Ozan Çağlayan <ozan () pardus ! org ! tr>
Date: 2010-06-21 16:47:28
Message-ID: 4C1F97A0.2040905 () pardus ! org ! tr
[Download RAW message or body]
Hi,
I have a bug report from a user which complains about udev not correctly hotplugging \
the devices. The symptoms are quite racy and random:
* When he starts the OS and plugs a USB device, udev doesn't load the necessary \
kernel driver,
* He then unplugs/plugs it several times:
* Sometimes it starts to work correctly, the module gets inserted
* Sometimes it still doesn't modprobe the module
* He discovered that spawning a 2nd udevd by hand resolves the issue
I suggested him to set the udevd log level to "debug" and we've found out that \
setting the log level through udevadm control heals the issue as well. So I proposed \
to edit the udev.conf and set the log level there and reboot. Upon reboot, after a \
cycle of 2-3 failed plug/unplug attempt, the problem seems fixed/disappeared too.
I grabbed full syslog with udevd running log-priority=debug, took a look and found \
out that the events are correctly dispatched to the worker threads but the modprobe \
is called on a very late plug/unplug attempt.
Here's the full log:
http://bugs.pardus.org.tr/attachment.cgi?id=5450
* The device is first plugged @ 16:50:54 (VENDOR=_USB_MF_)
* worker[541] being able to spawn modprobe is @ 16:53:21
* Between those timestamps you can see several "seq xxxx queued 'add' 'usb' which \
doesn't lead to a modprobe.
udev version is 146. I know that it's a little bit outdated but I'd be glad if you \
can help me debugging the issue. Any commit id from the git tree that is known to fix \
the issue is also very appreciated.
Thanks,
Ozan Caglayan
--
http://www.pardus.org.tr/eng
--
To unsubscribe from this list: send the line "unsubscribe linux-hotplug" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic