This series implements a more dynamic method of reporting BMC version &
identification. The current method of registering versions and IDs
during ipmi_register_smi means that if a BMC is upgraded during a boot,
the IPMI core code will report old version information.

We do this by querying the BMC (using a Get Device ID request) at smi
registration in the IPMI core code, and when the sysfs version & id
attributes are accessed.

The core of the change is in patch 3/4. Patches 1 and 2 implement a
couple of minor API changes leading up to this.

Patch 4 converts the powernv IPMI driver to use the dynamic IDs, rather
than using a zero device ID.

Questions & comments most welcome.



  - enable dynamic device IDs for existing interfaces and remove the
    _DISABLED state
  - use a mutex to protect against concurrent id update
  - comment spelling fix
  - don't repeat checks from ipmi_demangle_device_id
  - fix for shifted netfn values in ipmi_demangle_device_id, update comments
    to reflect new interface


Jeremy Kerr (4):
  ipmi: Add a reference from BMC devices to their interfaces
  ipmi: Make ipmi_demangle_device_id more generic
  ipmi: allow dynamic BMC version information
  ipmi/powernv: Use dynamic device ids

 drivers/char/ipmi/ipmi_msghandler.c | 268 ++++++++++++++++++++++++++++++++----
 drivers/char/ipmi/ipmi_powernv.c    |   5 +-
 drivers/char/ipmi/ipmi_si_intf.c    |   3 +-
 drivers/char/ipmi/ipmi_ssif.c       |   3 +-
 include/linux/ipmi_smi.h            |  24 ++--
 5 files changed, 260 insertions(+), 43 deletions(-)


Openipmi-developer mailing list

Reply via email to