ipmiutil_evt.service fails due to probable lack of PID file

Bug #1913834 reported by Christopher Head
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ipmiutil (Ubuntu)
New
Undecided
Unassigned

Bug Description

Install ipmiutil. Run “sudo systemctl start ipmiutil_evt”.

$ sudo systemctl start ipmiutil_evt
Job for ipmiutil_evt.service failed because a timeout was exceeded.
See "systemctl status ipmiutil_evt.service" and "journalctl -xe" for details.

$ systemctl status ipmiutil_evt
● ipmiutil_evt.service - ipmiutil Event Daemon
     Loaded: loaded (/lib/systemd/system/ipmiutil_evt.service; disabled; vendor preset: enabled)
     Active: failed (Result: timeout) since Fri 2021-01-29 15:24:44 PST; 5min ago
    Process: 2243217 ExecStartPre=/usr/share/ipmiutil/ipmiutil.pre (code=exited, status=0/SUCCESS)
    Process: 2243263 ExecStart=/usr/bin/ipmiutil getevt $IPMIUTILEVTARGS (code=exited, status=0/SUCCESS)

Jan 29 15:23:14 (hostname elided) ipmiutil[2243263]: Event Message Buffers not enabled.
Jan 29 15:23:14 (hostname elided) ipmiutil[2243263]: set_bmc_enables error 0xcc
Jan 29 15:23:14 (hostname elided) ipmiutil[2243263]: igetevent reading sensors ...
Jan 29 15:23:14 (hostname elided) ipmiutil[2243263]: igetevent reading sensors ...
Jan 29 15:23:39 (hostname elided) systemd[1]: ipmiutil_evt.service: Can't open PID file /run/ipmiutil_evt.pid (yet?) after start: Operation not permitted
Jan 29 15:23:39 (hostname elided) ipmiutil[2249663]: igetevent waiting for events via method 1 (SEL_events)
Jan 29 15:24:44 (hostname elided) systemd[1]: ipmiutil_evt.service: start operation timed out. Terminating.
Jan 29 15:24:44 (hostname elided) ipmiutil[2249663]: ipmiutil getevent exiting.
Jan 29 15:24:44 (hostname elided) systemd[1]: ipmiutil_evt.service: Failed with result 'timeout'.
Jan 29 15:24:44 (hostname elided) systemd[1]: Failed to start ipmiutil Event Daemon.

The failure appears to be inability to open /run/ipmiutil_evt.pid. In /lib/systemd/system/ipmiutil_evt.service, PIDFile=/run/ipmiutil_evt.pid and Type=forking. According to systemd.service(5), this means that the invoked command is expected to fork, and the invoked command should write the named PID file which systemd will subsquently read. However, ipmiutil itself does not contain any support for writing PID files AFAICT, so naturally it never creates one.

Deleting the PIDFile line from the service file appears to work, though perhaps it would be better to remove “-b” from IPMIUTILEVTARGS and use Type=simple or Type=exec instead?

$ lsb_release -rd
Description: Ubuntu 20.04.1 LTS
Release: 20.04

$ apt-cache policy ipmiutil
ipmiutil:
  Installed: 3.1.5-1
  Candidate: 3.1.5-1
  Version table:
 *** 3.1.5-1 500
        500 http://mirror.izaber.com/ubuntu focal/universe amd64 Packages
        100 /var/lib/dpkg/status

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.