There is an issue with Host name Write command with payload size of 132 bytes.
Currently ipmi driver limits max_xmit_msg_size to 63 bytes. Due to this
all IPMI commands with request size more than 63 bytes will not work.
This is seen with AMI OEM Host Name write command: payload 132 bytes.
When a DNS host name set is tried from host through SSIF interface, the name
gets truncated due to ipmi_ssif driver limiting the length to 63 bytes

As per IPMI Spec v2.0 section 12.3:
The maximum message size returned by the Get SSIF Interface Capabilities command
is 255 bytes.

This patch updates the max_xmit_msg_size to 255 in case SSIF_MULTI_n_PART.

Signee-off-by: Kamlakant Patel <kamlakant.pa...@cavium.com>
---
 drivers/char/ipmi/ipmi_ssif.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/char/ipmi/ipmi_ssif.c b/drivers/char/ipmi/ipmi_ssif.c
index 18e4650..2bf6f07 100644
--- a/drivers/char/ipmi/ipmi_ssif.c
+++ b/drivers/char/ipmi/ipmi_ssif.c
@@ -88,6 +88,8 @@
 #define SSIF_MSG_JIFFIES       ((SSIF_MSG_USEC * 1000) / TICK_NSEC)
 #define SSIF_MSG_PART_JIFFIES  ((SSIF_MSG_PART_USEC * 1000) / TICK_NSEC)
 
+#define SSIF_MAX_MSG_LENGTH    255
+
 enum ssif_intf_state {
        SSIF_NORMAL,
        SSIF_GETTING_FLAGS,
@@ -1500,8 +1502,8 @@ static int ssif_probe(struct i2c_client *client, const 
struct i2c_device_id *id)
                         * to be 1-31 bytes in length.  Not ideal, but
                         * it should work.
                         */
-                       if (ssif_info->max_xmit_msg_size > 63)
-                               ssif_info->max_xmit_msg_size = 63;
+                       if (ssif_info->max_xmit_msg_size > SSIF_MAX_MSG_LENGTH)
+                               ssif_info->max_xmit_msg_size = 
SSIF_MAX_MSG_LENGTH;
                        break;
 
                default:
-- 
2.7.4


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Openipmi-developer mailing list
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to