NetworkManager causes orphaned inodes
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
network-manager (Ubuntu) |
Fix Released
|
High
|
Mathieu Trudel-Lapierre | ||
Precise |
Fix Released
|
High
|
Mathieu Trudel-Lapierre |
Bug Description
[Impact]
On shutdown, dhclient isn't getting reaped by NetworkManager, despite being kept running through sendsigs so as not to disrupt remote filesystems (and their unmounting at shutdown). dhclient may be keeping open files for its lease files, which causes issues when unmounting /var/lib, which contains those lease files.
[Development Fix]
Remove support for connection assumption, which is meant to bring NetworkManager up to speed with connections that may have already be up during a restart of the daemon. Since we don't actually restart the daemon automatically (and instead suggest a restart of the system after upgrade) and the advantage is minimal compared to the impact on users of this interacting with the shutdown sequence, patch connection assumption out of the NM code and just always take down dhclient when NM stops.
[Stable Fix]
See above "Development fix".
[Test Case]
1) Shut down coputer.
2) In the shutdown process, perhaps as a post-stop script in /etc/init/
[Regression Potential]
Minimal, only affects bringing NetworkManager up on a restart of the daemon (sudo restart network-manager or /etc/init.
---------
During system shutdown, NetworkManager neither kills dhclient nor does it remove the dhclient pid file from the directory /var/run/
mount: / is busy
is seen in the console, and the filesystem must be recovered at boot time:
[ 8.946427] EXT4-fs (sda1): INFO: recovery required on readonly filesystem
[ 8.947057] EXT4-fs (sda1): write access will be enabled during recovery
[ 11.234075] EXT4-fs (sda1): recovery complete
If shared libraries used by dhclient are updated before the reboot, orphaned inodes associated with the .so files are created. For example, doing "sudo apt-get install --reinstall libc6" and then rebooting leads to:
[ 8.356521] EXT4-fs (sda1): INFO: recovery required on readonly filesystem
[ 8.356521] EXT4-fs (sda1): write access will be enabled during recovery
[ 8.716544] EXT4-fs (sda1): orphan cleanup on readonly fs
[ 8.716544] EXT4-fs (sda1): ext4_orphan_
[ 8.724544] EXT4-fs (sda1): ext4_orphan_
[ 8.724544] EXT4-fs (sda1): ext4_orphan_
[ 8.724544] EXT4-fs (sda1): 3 orphan inodes deleted
[ 8.728544] EXT4-fs (sda1): recovery complete
This is network-manager 0.9.3.995+
ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: network-manager 0.9.3.995+
ProcVersionSign
Uname: Linux 3.2.0-20-generic i686
ApportVersion: 1.95-0ubuntu1
Architecture: i386
CRDA: Error: command ['iw', 'reg', 'get'] failed with exit code 1: nl80211 not found.
Date: Fri Mar 23 07:42:20 2012
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release i386 (20111011)
IwConfig:
lo no wireless extensions.
eth0 no wireless extensions.
NetworkManager.
[main]
NetworkingEnab
WirelessEnable
WWANEnabled=true
WimaxEnabled=true
ProcEnviron:
TERM=xterm
LANG=en_US.UTF-8
SHELL=/bin/bash
RfKill:
SourcePackage: network-manager
UpgradeStatus: Upgraded to precise on 2012-03-02 (20 days ago)
Changed in network-manager (Ubuntu): | |
importance: | Undecided → High |
milestone: | none → ubuntu-12.04 |
tags: | added: rls-mgr-p-tracking |
Changed in network-manager (Ubuntu Precise): | |
assignee: | nobody → Mathieu Trudel-Lapierre (mathieu-tl) |
description: | updated |
tags: |
added: verification-done removed: verification-needed |
tags: | added: quantal |
tags: | added: saucy |
Status changed to 'Confirmed' because the bug affects multiple users.