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):
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.
Looks like udev rules are not executed when devfs is full - lvremove/vgremove leaving symlinks in /dev/VG
- documented risks
- errors in messages
- udev errors should be send also to syslog
How do you know about "udevlog" in the first place?
(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?
(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.
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.
Another alternative is to repeat the warning in the form of a kcs article.
# 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
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.