[Bug 1318317] Re: openipmi startup script removes kernel modules

Nish Aravamudan nish.aravamudan at canonical.com
Fri Mar 18 21:48:48 UTC 2016


** Patch added: "openipmi_2.0.18-0ubuntu7.1.2.0.18-0ubuntu7.2.debdiff"
   https://bugs.launchpad.net/ubuntu/+source/openipmi/+bug/1318317/+attachment/4603771/+files/openipmi_2.0.18-0ubuntu7.1.2.0.18-0ubuntu7.2.debdiff

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1318317

Title:
  openipmi startup script removes kernel modules

Status in openipmi package in Ubuntu:
  Fix Released

Bug description:
  I need some IPMI kernel modules, so I load them during startup. This
  worked quite well until I upgraded to Ubuntu 14.04.

  As you can see I have the modules in /etc/modules:

  # grep ipmi /etc/modules
  ipmi_watchdog
  ipmi_devintf
  ipmi_poweroff
  ipmi_si

  Right after reboot, the modules are there:

  # lsmod |grep -i ipm
  ipmi_si                53257  2
  ipmi_poweroff          14366  0
  ipmi_devintf           17572  0
  ipmi_watchdog          24912  0

  but disappear after a few seconds/minute. I found out, that the cause
  is the /etc/init.d/openipmi script. The behaviour of the script is
  quite strange because a stop/start will behave differently then a
  restart.

  I loaded the modules manually using modprobe:
  ipmi_si                53257  2
  ipmi_poweroff          14366  0
  ipmi_devintf           17572  0
  ipmi_watchdog          24912  0

  when I execute:
  # service openipmi stop

  the module ipmi_devintf gets removed:

  ipmi_si                53257  2
  ipmi_poweroff          14366  0
  ipmi_watchdog          24912  0

  starting the service again with:

  # service openipmi start

  will remove ALL IPMI kernel modules:

  # lsmod |grep -i ipm
  #

  One of the reasons seems to be the module ipmi_msghandler. This is
  already integrated and causes some of the problems.

  When I remove it from /etc/init.d/openipmi like this:

  65,66c65
  < #MODULES_BASE="ipmi_msghandler"
  < MODULES_BASE=""
  ---
  > MODULES_BASE="ipmi_msghandler"
  325,326c324,325
  < #	modprobe ipmi_msghandler > /dev/null 2>&1
  < #	modules_loaded ipmi_msghandler
  ---
  > 	modprobe ipmi_msghandler > /dev/null 2>&1
  > 	modules_loaded ipmi_msghandler

  stoping and starting the service works again. But restarting the
  service will still remove all modules and will not load them anymore.

  [Impact]
  Issuing `service openipmi {start,stop,restart}` failures lead to unloading of IPMI modules that were previously loaded. Particularly on OpenPower systems, but also on others, this will result in 'ipmi_devintf' being unloaded during boot, and in-band IPMI being non-functional (amongst other IPMI functionality).

  [Test Case]
  On an OpenPower machine (this also happens on an appropriately configured (meaning without IPMI support) Intel qemu instance), load IPMI modules (in particular, ipmi_devintf, but any of them can be affected). Attempt to start the openipmi service with `service openipmi start`. Without the fix proposed, here, the ipmi_devintf module is unloaded. With the fix, the module stays loaded.

  [Regression Potential]
  The primary risk of regression is if an end-user was relying on the behavior of an error during openipmi initialization resulting in disabling of all IPMI functionality. I don't think that is reasonable behavior to rely on, though (and is not clearly documented anywhere as expected).

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



More information about the Ubuntu-sponsors mailing list