openbmc/phosphor-host-ipmid

ipmitool fru edit cmd returning sucess while having an exception

cvam0000 opened this issue · 7 comments

root@bmc:~# ipmitool fru edit 215 field b 2 1111111111122
Updating Field '1111111111111' with '1111111111122' ...

root@bmc:~# ipmitool fru print 215
 Board Mfg Date        : xxx
 Board Mfg                 :  cvam
 Board Product          : xxx
 Board Serial             : 1111111111111
 Board Part Number     : 111-1cvam-0000-CV0
 Board Area Checksum   : OK
 Product Manufacturer  : cvam
 Product Name          : xxx
 Product Part Number   : xxxx-xxxx-xxxx-xxx
 Product Version       :  xxx
 Product Serial        : xxx
 Product Area Checksum : OK

journal

ipmid[443]: error writing fru

I think instead of "Updating Field '1111111111111' with '1111111111122' ..." we should return an error here ?

catch (const sdbusplus::exception_t&)

Shouldn’t it already be doing so?

return ipmi::responseInvalidFieldRequest();

Yeah but consider me an end user ! if is get this "Updating Field '1111111111111' with '1111111111122' ..." as an output of an ipmi command. I will consider this a successful message of completion of the command. Instead of this is there any possibility to print an error log?

The code I referenced should be sending a failure completion code back to ipmitool. Is it not? What was the resulting rc?

If you want to change the behavior of ipmitool, you'll need to contribute that up to them.

https://codeberg.org/IPMITool/ipmitool

My reading of the ipmitool code suggests that it should have printed out a message if the update failed. So either I'm misreading ipmitool or the storagecommands.cpp link I gave above didn't give a failure rc. Can you run a busctl monitor while you run this ipmi command to see what the completion code was?

Please take this up with the upstream tool.

sure ill ask ipmitool about this