Bug 876535

Summary: Document risks of using udevlog on kernel cmdline
Product: Red Hat Enterprise Linux 6 Reporter: Marian Csontos <mcsontos>
Component: udevAssignee: Harald Hoyer <harald>
Status: CLOSED ERRATA QA Contact: Leos Pol <lpol>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.4CC: lpol, mnavrati, psklenar, udev-maint-list, wmealing
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
If "udevlog" is specified on the kernel command line to debug udev, all udev logs are stored in the /dev/.udev/udev.log file. Running a system with the udev debug log turned on and using "udevlog" on the kernel command line for an extended period of time could cause /dev/.udev/udev.log to become very large and the devtmpfs mounted on /dev to become full. Consequently, if /dev became full, no new symbolic links and device nodes could be included. With this update, start_udev contains a verbose warning message describing the possibility.
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-07-22 07:19:28 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Marian Csontos 2012-11-14 11:20:19 UTC
Description of problem:

Running system with udevlog specified on kernel cmdline may cause problems once the udev's devfs is full - looks like udev rules are not executed: I have had lvremove and vgremove leaving behind symbolic links in /dev/$VGNAME and the directory itself, causing problems when recreating the VG.

The problem is not obvious:
- the tail of udev.log is not very helpful - it contains only old data.
- no full fs reported by df or memory reported by top (it's visible in free yes)
- no helpful message in /var/log/messages

One should be warned when enabling this feature and decrease log-priority after successful boot.

One should clean the file once over certain size, by ': > /dev/.udev/udev.log'.


Version-Release number of selected component (if applicable):
udev-147-2.42.el6.x86_64


How reproducible:
100%


Steps to Reproduce:
1. start system with udevlog on kernel cmdline
2. run vgcreate/lvcreate/lvremove/vgremove in a cycle - vgcreate will fail after some time due to existing /dev/VG.


Actual results:
Looks like udev rules are not executed when devfs is full - lvremove/vgremove leaving symlinks in /dev/VG


Expected results:
- documented risks
- errors in messages
- udev errors should be send also to syslog

Additional info:

Comment 2 Harald Hoyer 2012-11-28 14:52:09 UTC
How do you know about "udevlog" in the first place?

Comment 3 Marian Csontos 2012-11-28 15:15:07 UTC
(In reply to comment #2)
> How do you know about "udevlog" in the first place?

Source code is the best decumentation.

Is this one of the "undocumented" features one's not supposed to use?

Comment 4 Harald Hoyer 2012-11-28 15:26:31 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > How do you know about "udevlog" in the first place?
> 
> Source code is the best decumentation.
> 
> Is this one of the "undocumented" features one's not supposed to use?

Yes, it's an "undocumented" debugging feature for customer debugging support. :-)

If you use it, you should be aware of the problems it causes. Of course, I can document it in the source code of the shell script.

Comment 5 RHEL Program Management 2012-12-14 08:33:07 UTC
This request was not resolved in time for the current release.
Red Hat invites you to ask your support representative to
propose this request, if still desired, for consideration in
the next release of Red Hat Enterprise Linux.

Comment 6 Wade Mealing 2013-09-17 04:37:29 UTC
Another alternative is to repeat the warning in the form of a kcs article.

Comment 8 Leos Pol 2015-04-15 09:11:17 UTC
# grep -A2 udevlog start_udev 
	if strstr "$cmdline" udevlog; then
                echo 'WARNING: udevlog is active!' >&2
                echo "$udev_root/.udev/udev.log can grow big very quick and resides in RAM" >&2
                echo 'Turn off udev logging as soon as you booted!' >&2

Comment 9 errata-xmlrpc 2015-07-22 07:19:28 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2015-1382.html