Corey,

I've seen this also, mostly on Red Hat kernels around the 2.6.32
vintage.
It would be nice to leverage the fix you mention below.  Can you point
to it?

Andy

-----Original Message-----
From: Corey Minyard [mailto:[email protected]] 
Sent: Friday, April 06, 2012 4:53 PM
To: dbashaw
Cc: OpenIPMI
Subject: Re: [Openipmi-developer] Multiple users sending messages via
KCS interface

You don't mention the kernel version or anything of that nature.  There 
was a bug fixed a while back for something that looked like this.

-corey

On 04/05/2012 09:15 PM, dbashaw wrote:
> I have two IPMI users created using ipmi_create_user(..).
> Each user can send messages async with respect to each other.
> I have also seen IPMI message handler: BMC returned incorrect response
> errors some times.
>
> When I allow only one user to use the KCS interface this does not seem
> to happen.
> After reviewing ipmi_msghandler.c I am not able to figure out how a
> response to a message
> from a given user can be identified with that user and not some other.
>
>    ipmi_msghandler() sends the message to the interface handler (KCS
> state machine in this case) and is done,
> free to handle the next user request since responses arrive
> asynchronously at a later time.
>
>   From the IPMI spec I see KCS message request format described as:
>       BYTE 1        BYTE 2     BYTE 3:N
>      NetFn/Lun     Cmd         Data
>
> KCS message response format:
>       BYTE 1        BYTE 2     BYTE 3      BYTE 4:N
>        NetFn/Lun   Cmd        Ccode         Data
>
> Data is that which is required by the specific command being sent
only.
>
> Request and response messages both have no user identifiable
information
> that I can find in the V1.5 or V2.0 spec.
>
> I'm beginning to think that this is the reason for the "incorrect
> response" error above when two users are
> sending requests.
>
> handle_new_recv_msg((ipmi_smi_t          intf,
>                                  struct ipmi_smi_msg *msg)
>           } else if (((msg->rsp[0]>>  2) != ((msg->data[0]>>  2) | 1))
>                      || (msg->rsp[1] != msg->data[1])) {
>                   /*
>                    * The NetFN and Command in the response is not even
>                    * marginally correct.
>                    */
>                   printk(KERN_WARNING PFX "BMC returned incorrect
response,"
>                          " expected netfn %x cmd %x, got netfn %x cmd
%x\n",
>                          (msg->data[0]>>  2) | 1, msg->data[1],
>                          msg->rsp[0]>>  2, msg->rsp[1]);
>
> No information in msg->rsp or msg->data can be used to make sure this
> response is associated with
> the correct user. Higher level things like sequence numbers are
> contained in the msg struct at some level
> but don't address the issue of associating the response to a unique
user.
>
> How to fix this?
>
> Dave
>
>
>
>
>
>
------------------------------------------------------------------------
------
> For Developers, A Lot Can Happen In A Second.
> Boundary is the first to Know...and Tell You.
> Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
> http://p.sf.net/sfu/Boundary-d2dvs2
> _______________________________________________
> Openipmi-developer mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/openipmi-developer


------------------------------------------------------------------------
------
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
_______________________________________________
Openipmi-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Openipmi-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to