[Bug 1326049] [NEW] init script deletes /dev/ipmi0

Benjamin Rodgers benjamin.rodgers at dreamhost.com
Tue Jun 3 16:35:54 UTC 2014


Public bug reported:

According to the init script, it deletes '/dev/ipmi0' whether or not
udev is in use for compatibility with kernels compiled for other
distributions.

# NOTES:
# * /dev/ipmi0 is unconditionally deleted here on ipmi_devintf unload,
#   because SLES9 and RHEL4 kernels don't send a message for udev to delete
#   it for us.

If you boot up with ipmi modules compiled into the kernel, the init
script will delete out '/dev/ipmi0' and never re-create it since it
tries to re-create the device by re-inserting the module.  I'm currently
working around this problem by using the same check for udev used
elsewhere in the script, and never deleting the device files in the
first place.


Here's some standard information about the distribution we're running on and package version.

~# lsb_release -rd
Description:	Ubuntu 12.04 LTS
Release:	12.04
~# apt-cache policy openipmi
openipmi:
  Installed: 2.0.18-0ubuntu3
  Candidate: 2.0.18-0ubuntu3
  Version table:
 *** 2.0.18-0ubuntu3 0
        500 http://mirror.newdream.net/ubuntu/ precise/main amd64 Packages
        100 /var/lib/dpkg/status


And here's the small patch I'm currently using to work around the issue.

diff -ur a/debian/openipmi.init b/debian/openipmi.init
--- a/debian/openipmi.init	2011-03-04 08:30:56.000000000 -0800
+++ b/debian/openipmi.init	2014-06-03 09:07:25.016452512 -0700
@@ -296,7 +296,7 @@
 	done
         # delete interface node ONLY if ipmi_devintf is unloaded
         [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] &&
-	        rm -f "/dev/ipmi${INTF_NUM}"
+	        [ ${UDEV_EXISTS} -eq 0 ] && rm -f "/dev/ipmi${INTF_NUM}"
 }
 
 unload_ipmi_modules_leave_features()
@@ -306,7 +306,7 @@
 	done
         # delete interface node ONLY if ipmi_devintf is unloaded
         [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] &&
-	        rm -f "/dev/ipmi${INTF_NUM}"
+	        [ ${UDEV_EXISTS} -eq 0 ] && rm -f "/dev/ipmi${INTF_NUM}"
 	lsmod | egrep -q "ipmi_(poweroff|watchdog)" > /dev/null 2>&1
 	if [ "$?" -ne "0" ]; then
 		stop_watchdog_quiet

** Affects: openipmi (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to openipmi in Ubuntu.
https://bugs.launchpad.net/bugs/1326049

Title:
  init script deletes /dev/ipmi0

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openipmi/+bug/1326049/+subscriptions



More information about the Ubuntu-server-bugs mailing list