|
» |
|
|
|
NAMEhotplugd — PCI I/O hotplug (attention button) events daemon SYNOPSIS/usr/sbin/hotplugd
logfile
openmode DESCRIPTIONThe
hotplugd
daemon handles PCI I/O hotplug
(also known as attention button, AB, or doorbell) events
that are generated by pressing the attention button
corresponding to a PCI I/O slot. Only one attention button event is processed by the system
at any point in time.
If more than one attention button is pressed,
the events are put in a queue within the kernel. This daemon invokes
/usr/bin/olrad
to perform the various online addition or replacement operations (OLAR, OL*)
on the slot on which the attention button has been pressed.
The daemon does not use the
-f
(override CRA results) option of
olrad. Normally, this daemon is started by the
/sbin/init.d/pci_olar
startup script at boot time.
See the
Daemon Startup
subsection for details. If an attention button is pressed before the startup of the daemon,
the event is dropped and no messages are logged.
Also see the
DIAGNOSTICS
section for messages that are logged in the system log file
or the
hotplugd
log file. Only users with superuser privileges may use this command
to perform OL* functions. Currently, only the online addition and replacement
functions are supported.
Online deletion is not supported. The blinking of the power LED is not supported on all hardware platforms. OperandsThe following operands are required.
See also the
Daemon Startup
subsection.
- logfile
Log file where the daemon will log its messages.
The standard output and standard error of the
/usr/bin/olrad
command are also captured in this log file. - openmode
Mode in which to open the
logfile.
It can be one of the following:
- append
Open the file in append mode.
New log information is appended at the end of
logfile. - trunc
Open the file and truncate it.
If the
logfile
exists,
its length is truncated to 0 and the mode and owner are unchanged.
Daemon StartupIn the normal (and recommended) operation
hotplugd
is invoked at boot time through the startup script,
/sbin/init.d/pci_olar.
The startup script reads the configuration file,
/etc/rc.config.d/pci_olar
for the configuration file variables,
HOTPLUGD_LOGFILE
and
HOTPLUGD_MODE,
which are assigned to the
logfile
and
openmode
parameters, respectively.
The installed default values are:
HOTPLUGD_LOGFILE=/var/adm/hotplugd.log
HOTPLUGD_MODE=trunc To start a new instance of
hotplugd
with new values for
logfile
and
mode,
you can do so by stopping the running instance of
hotplugd
and manually starting it with the new values. To have
hotplugd
always invoked on startup with the new values,
change the values of the
HOTPLUGD_LOGFILE
and
HOTPLUGD_MODE
variables in the configuration file,
/etc/rc.config.d/pci_olar.
At the next boot,
hotplugd
will be invoked with these new values. DIAGNOSTICSMessages in the System Log FileThe following messages are logged in the system log file,
/var/adm/syslog/syslog.log.
If an attention button event occurs
after the daemon has been terminated
following a successful start of the daemon,
the messages are logged in the system log file.
Could not allocate memory for PCI I/O Attention Button event
A chunk of memory,
used for storing the attention button event information,
could not be allocated. The event is dropped after the power LED is set to
PWR_RAIL
mode.
That is, the power LED will be set to ON
if the power to the slot is ON,
or the power LED will be set to OFF
if the power to the slot is OFF.
Could not add the event to the queue, dropping AB event
The queue has not been initialized
(daemon not running) or the queue is under flow control.
The queue can go into flow control
if the queue already has maximum number of events.
Currently the maximum is 128. The event is dropped after setting the power LED to
PWR_RAIL
mode (see previous message).
Wait till the attention button events are processed by the daemon.
Dropping AB event, slotId not found in the registered slotIds
The attention button event was received on a slot ID
that has not been registered (during the system bootup)
with the kernel OLAR module. The event is dropped after setting the power LED to
PWR_RAIL
mode (see previous message).
Contact your HP response center.
Could not get the slot information for PCI I/O Attention Button event : slotId , olar_error_no = olarErrMsg
The call to get the slot information failed.
olarErrMsg
gives the reason for the error. This results in an invalid PCI OL* event to the daemon.
hotplugd daemon (pid= pid) is shutting down... dropping AB event : slotId
The system is clearing the attention button events in the queue
due to the abnormal termination of the daemon
(for example, with the
SIGKILL
signal (see
kill(1))
and there are pending attention button events in the queue. While clearing the events from the queue,
the system sets the power LED corresponding to the
slotId,
to
PWR_RAIL
mode (see previous message).
Setting the power led to PWR_RAIL mode failed : slotId, olar_error_no = olarErrMsg
Setting the power LED to
PWR_RAIL
mode failed.
The system sets the power LED to
PWR_RAIL
mode while clearing attention button events from the queue,
triggered by the abnormal termination of the hotplugd daemon
(for example, with the
SIGKILL
signal (see
kill(1)).
Messages in the hotplugd Daemon Log FileThe following messages are logged in the
hotplugd
daemon log file, defined by
logfile.
ioctl(DEV_OLAR_GET_ABEVENT/WAIT) error : errno = errMsg
An error has occurred on the
ioctl()
call to get attention button events from the kernel in the
WAIT
mode.
errMsg
gives the reason for the error.
ioctl(DEV_OLAR_GET_ABEVENT/NOWAIT) error : errno = errMsg
An error has occurred on the
ioctl()
call to get attention button events from the kernel in the
NOWAIT
mode.
errMsg
gives the reason for the error.
ioctl(DEV_OLAR_GET_ABEVENT/WAIT) error : errno = errMsg sleeping for n seconds
An error has occurred on the
ioctl()
call to get attention button events from the kernel in the
WAIT
mode.
errMsg
gives the reason for the error.
This error occurred within 1 second of the previous error.
The daemon will sleep for
n
seconds before making another
ioctl()
call.
#oprnNum oprn - slot( slotId
) - Failed - retval( ret )
The specified
oprn
PCI OL* operation failed.
oprn
may be one of the following:
ADD,
POST_REPLACE,
POWER_OFF,
PRE_REPLACE.
Error opening /dev/olar in read-write mode : errno = errMsg
Could not open the device in the read-write mode.
errMsg
gives the reason for the error.
Error setting close-on-exec flag on /dev/olar file = errMsg
Setting the close-on-exec flag on
/dev/olar
using
fcntl()
failed.
errMsg
gives the reason for the error.
At times, terminating the daemon with
kill -9
may not clear all kernel data structures.
If you try to restart the daemon, it may report an error,
ioctl(DEV_OLAR_INIT_ABEVENT) Failed.
In such circumstances, the system must be rebooted
to start the daemon successfully.
ioctl(DEV_OLAR_INIT_ABEVENT) Failed, olar_error_no = olarErrMsg
The initialization of
hotplugd
for getting attention button events failed.
olarErrMsg
gives the reason for the error.
ioctl(DEV_OLAR_INIT_ABEVENT) Failed, errno = errMsg
The initialization of
hotplugd
for getting attention button events failed.
errMsg
gives the reason for the error.
Shutdown of /dev/olar for Attention Button events Failed : olar_error_no = olarErrMsg
The shutdown of
hotplugd
failed.
olarErrMsg
gives the reason for the error.
Shutdown of /dev/olar for Attention Button events Failed : errno = errMsg
The shutdown of
hotplugd
failed.
errMsg
gives the reason for the error.
#oprnNum oprn - slot( slotId
) - Dropping AB Event - rcvd-time( time )
hotplugd
is dropping
oprn
PCI OL* operation on the
slotId
slot because it is shutting down.
time
gives the time at which the attention button was pressed.
#oprnNum oprn - slot( slotId
) - time( time ) - Invalid PCI OL * operation
hotplugd
has received an invalid PCI OL* operation on slot
slotId.
oprn
can be one of the following:
INVALID,
INVALID_INSERTION,
INVALID_REMOVAL.
time
is the time at which the attention button was pressed.
This could happen if
INSERTION
or
REMOVAL
is received and the slot is not in the right state.
For example, if
INSERTION
is received,
and the slot is not suspended,
and the driver is attached,
then it is an invalid PCI OL* operation.
Or, it is invalid if
REMOVAL
is received, and the slot is suspended. This could also happen if the call to get the slot status information fails.
#oprnNum - slot( slotId
) - time( time ) - Invalid PCI OL * operation
(oprnCode)
hotplugd
received a PCI OL* operation which it does not understand on slot
slotId.
oprnCode
is the integer representation of the PCI OL* operation.
time
is the time at which the attention button was pressed. Contact your HP response center.
#oprnNum olarIoEvent - slot( slotId
) - time( time ) - Dropping AB Event, received, while processing another event on the slot
The attention button event has been dropped
because it was received while another event was being processed or pending
for the same
slotId.
olarIoEvent
is the event that was received.
It can be one of the following:
BUS_MODE_MISMATCH,
FREQ_MISMATCH,
INSERTION_POWERED,
INSERTION_UNPOWERED,
NORMAL_REMOVAL,
POWER_FAULT,
SURPRISE_REMOVAL.
time
gives the time at which the event was received. Wait for the attention button processing on a slot to complete
before pressing the attention button again on that slot.
#oprnNum - slot( slotId
) - Setting power led to PWR_RAIL mode failed, errno = errMsg
The power LED could not be set to
PWR_RAIL
mode for the given
slotId.
errMsg
gives the reason for the error.
#oprnNum - slot( slotId
) - Setting power led to PWR_RAIL mode failed, olar_error_no = olarErrMsg
The power LED could not be set to
PWR_RAIL
mode for the given
slotId.
olarErrMsg
gives the reason for the error.
Usage : hotplugd <logFileName> <append|trunc>
The
hotplugd
program was invoked with an invalid set of parameters.
hotplugd : fork() failed, errno = errMsg
hotplugd
could not fork itself.
errMsg
gives the reason for the error.
hotplugd : Could not open log file : logFile, errno = errMsg
hotplugd
could not open the given
logFile
in write mode.
errMsg
gives the reason for the error.
hotplugd : Could not get lock on file : logFile, errno = errMsg
hotplugd
could not get the lock on the
logFile.
errMsg
gives the reason for the error. It could be because another instance of
hotplugd
is running.
FILES- /etc/rc.config.d/pci_olar
Configuration file for PCI I/O OLAR operations. - /sbin/init.d/pci_olar
Startup script, used at boot time to start the daemon. - /var/adm/hotplugd.log
Installed default name of file where the daemon logs messages.
See the
DIAGNOSTICS
section and the
Daemon Startup
subsection for details. - /var/adm/syslog/syslog.log
System log file.
See the
DIAGNOSTICS
section for details.
|