[Skiboot] [PATCH v2 1/3] hw/bt: Fix bt_add_ipmi_msg_head() logic

Stewart Smith stewart at linux.ibm.com
Wed Feb 27 13:53:57 AEDT 2019


Vasant Hegde <hegdevasant at linux.vnet.ibm.com> writes:
> On 02/22/2019 06:36 AM, Oliver wrote:
>> On Fri, Feb 22, 2019 at 11:34 AM Andrew Jeffery <andrew at aj.id.au> wrote:
>>>
>>>
>>>
>>> On Fri, 22 Feb 2019, at 02:37, Vasant Hegde wrote:
>>>> BT send logic always sends top of bt message list to BMC. Once BMC reads the
>>>> message, it clears the interrupt and bt_idle() becomes true.
>>>>
>>>> bt_add_ipmi_msg_head() adds message to top of the list. If bt message list
>>>> is not empty then:
>>>>    - if bt_idle() is true then we will endup sending message to BMC before
>>>>      getting response from BMC for inflight message. Looks like on some
>>>>      BMC implementation this results in message timeout.
>>>>    - else we endup starting message timer without actually sending message
>>>>      to BMC.. which is not correct.
>>>>
>>>> This patch fixes above described issue by adding message to right place
>>>> in the list.
>>>>
>>>> Signed-off-by: Vasant Hegde <hegdevasant at linux.vnet.ibm.com>
>>>> ---
>>>> Stewart,
>>>>    All I'm doing is list_pop/list_add. May be we can have new function
>>>>    (list_add_after()>. Let me know whether you are ok with this patch
>>>>     -OR- want me to add list_add_after()>

I'm still on the side of having a separate high priority list. I'm most
concerned about having the code be obviously correct, and the urgent
flag and poking through the list to find the right place seems more
complex.


-- 
Stewart Smith
OPAL Architect, IBM.



More information about the Skiboot mailing list