From: Sergey Vlasov <vsu@altlinux.ru>
To: linux-hotplug@vger.kernel.org
Subject: wrong names in /dev/.udev/failed for renamed network interfaces
Date: Sat, 10 Mar 2007 15:05:10 +0000 [thread overview]
Message-ID: <20070310150510.GI15271@master.mivlgu.local> (raw)
[-- Attachment #1.1: Type: text/plain, Size: 2229 bytes --]
Hello!
I have found a problem with /dev/.udev/failed handling for network
interfaces which are renamed. Currently I'm using udev-105, but the
version 106 does not seem to have any relevant changes.
Suppose that udevd is handling an "add" event for a network interface,
and there are rules which set NAME and RUN for that interface. In
this case udevd renames the interface, changing its devpath. But if
some of subsequently executed RUN commands fail, the queue entry for
the event must be moved to /dev/.udev/failed, so that the event may be
processed again later; the master udevd process does this, but it uses
the initial value of devpath, which is no longer correct. When at
some later time "udevtrigger --retry-failed" is invoked, the old
devpath does not exist (or, even worse, exists but points at some
other device), therefore the event is not reprocessed properly.
I see several possible solutions to this problem:
1) Just do nothing; document that udevtrigger --retry-failed is not
reliable if used together with interface renaming. This would
mean that I need to find another solution for reliable
initialization of hotpluggable network interfaces (e.g., creating
an own "failed" queue from a RUN script and processing it in some
special way instead of using udevtrigger). This also does not
address the case when the old devpath points to some other
interface - udevtrigger --retry-failed does not support any
filtering options, therefore it cannot be used reliably for other
events without the possibility of disrupting network interfaces
configured earlier.
2) Implement some form of communication between the master udevd
process and forked processes which handle events, so that a forked
process may report new devpath to the master process. This should
fix the problem, but introduces additional complexity.
3) Move /dev/.udev/failed handling to the event handling process -
this will break if that process dies for any reason (e.g., due to
SIGALRM), so not a good solution.
Maybe someone has found this problem before and already has a solution
or a workaround for it?
--
Sergey Vlasov
[-- Attachment #1.2: Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 345 bytes --]
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
[-- Attachment #3: Type: text/plain, Size: 226 bytes --]
_______________________________________________
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 reply other threads:[~2007-03-10 15:05 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-10 15:05 Sergey Vlasov [this message]
2007-03-14 20:56 ` wrong names in /dev/.udev/failed for renamed network interfaces Kay Sievers
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=20070310150510.GI15271@master.mivlgu.local \
--to=vsu@altlinux.ru \
--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