Bug 601723

Summary: udevd[488]: can not read '/etc/udev/rules.d/79-yast2-drivers.rules'
Product: [openSUSE] openSUSE 11.3 Reporter: Klaus Kämpf <kkaempf>
Component: YaST2Assignee: Michal Zugec <mzugec>
Status: RESOLVED FIXED QA Contact: Jiri Srain <jsrain>
Severity: Normal    
Priority: P3 - Medium CC: jeffm, jsrain, koenig, lchiquitto, lmuelle, roger.larsson
Version: Milestone 5   
Target Milestone: ---   
Hardware: x86-64   
OS: Other   
Whiteboard:
Found By: Development Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Klaus Kämpf 2010-05-01 17:42:34 UTC
Booting is *flooded* with $summary after upgrading to 11.3 M6
Comment 1 Kay Sievers 2010-05-04 04:23:16 UTC
Yast should not create empty rules files.
Comment 2 Klaus Kämpf 2010-05-04 06:34:24 UTC
I guess empty rule files could as well be silently ignored ;-)


Hmm, is this a leftover from the upgrade ?!
> rpm -qf /etc/udev/rules.d/79-yast2-drivers.rules
file /etc/udev/rules.d/79-yast2-drivers.rules is not owned by any package
Comment 3 Klaus Kämpf 2010-05-04 06:35:01 UTC
I've removed the file manually in my system now. Lets see ...
Comment 4 Kay Sievers 2010-05-04 09:31:54 UTC
(In reply to comment #2)
> I guess empty rule files could as well be silently ignored ;-)

It's still a bug to fix to create completely empty files. :)

> Hmm, is this a leftover from the upgrade ?!
> > rpm -qf /etc/udev/rules.d/79-yast2-drivers.rules
> file /etc/udev/rules.d/79-yast2-drivers.rules is not owned by any package

I don't think so. I guess it is created by the installation code.
Comment 5 Lars Müller 2010-05-09 10:41:32 UTC
I've seen the same issue recently with an openSUSE 11.3 M6 system.

As Klaus suggested udev should ignore an empty file.

And as Kay suggested YaST or which tool wver should not create such a file.

My system had been unusable due to continuous output to the console.  It never made it starting the network stack or ssh to get into the system.  We managed to take a screen shot with a mobile phone and by this identified what's causing the trouble, the empty /etc/udev/rules.d/79-yast2-drivers.rules file.
Comment 6 Jeff Mahoney 2010-05-10 19:25:15 UTC
"Me too."

As a data point, I've been updating via zypper dup since M3. Something is plunking that file down during package update.
Comment 7 Kay Sievers 2010-05-11 09:15:26 UTC
This is likely caused by an inotify bug bnc#601715.

The reason the empty file triggers it, is probably that this causes udev to use syslog/console. This could also happen by any other failure udev detects and tries to report.

Why the kernel is making udev running in an inotify loop after that, is not clear at the moment. 

There have been no changes in this area of udev for a long time, and no other distro is reporting any such problems, so I would suspect it's in our kernel. Jeff, you are in needinfo in that bug, maybe you have an idea?
Comment 8 Kay Sievers 2010-05-11 21:25:05 UTC
I hope we've found the issue, which was caused by device-mapper playing games with device nodes and inotify not coping with that as expected.

The only thing left in this bug is that Yast should not create completely empty udev rules files at installation time. Thanks!
Comment 9 Klaus Kämpf 2010-05-12 07:09:23 UTC
The empty udev rule file might have also been a result of a "zypper dup"
Comment 10 Michal Zugec 2010-05-12 07:34:19 UTC
No, it's written by YaST. I'm surprised how this can break udev, but fine, I can remove it in case it's empty
Comment 11 Kay Sievers 2010-05-12 09:24:56 UTC
Inotify seems to fall-back to watch the entire directory if the file that was watched is deleted. Such case is not handled by udev, and all access to any file in /dev was waking up udev.

The empty file just caused a warning, which lead udev to access /dev/console, and it ended up in a loop. This empty file existed for a looong time, it just became a bug since device-mapper recently started to delete nodes which it shouldn't.
Comment 12 Michal Zugec 2010-05-12 12:33:30 UTC
fixed in yast2-network-2.19.26
Comment 13 Leonardo Chiquitto 2010-05-12 14:01:25 UTC
*** Bug 605177 has been marked as a duplicate of this bug. ***
Comment 14 Roger Larsson 2010-07-10 13:45:54 UTC
I still get the message (and the empty file)

# rpm -q yast2-network
yast2-network-2.19.33-1.1.x86_64

The message is wrong - I thought something was really wrong
can't read sounds like corrupted or not accessible...
Comment 15 Bernhard Wiedemann 2016-04-15 11:41:45 UTC
This is an autogenerated message for OBS integration:
This bug (601723) was mentioned in
https://build.opensuse.org/request/show/39856 Factory / yast2-network