mbox series

[SRU,F:linux-bluefield,v1,0/1] UBUNTU: SAUCE: ipmb_host.c: Fix slow transactions

Message ID 1617399650-28927-1-git-send-email-asmaa@nvidia.com
Headers show
Series UBUNTU: SAUCE: ipmb_host.c: Fix slow transactions | expand

Message

Asmaa Mnebhi April 2, 2021, 9:40 p.m. UTC
BugLink: https://bugs.launchpad.net/bugs/1922393

SRU Justification:

[Impact]

* The previous ipmb_host patch broke the customer tests. They requested to make the ipmb_host response time as long as before. In the case where the I2C bus is made very busy, the ipmb_host driver just drops slow/delayed responses. This fix elongates the timeout of the response.
* Fixes a crash which occurs after powercycling certain BlueField-2 systems.
* The crash is due to the handshake which takes too long to wait for a response at boot time.

[Fix]

* Before executing the IPMB handshake which loads the ipmb_host driver, detect if there is a slave detected and make sure that the slave can respond.
* Free current_msg pointer right after sending the message so that sent transactions are independent of the response transactions.

[Test Case]

* soft reset
* powercycle
* run ipmitool commands
* remove and load module manually

[Regression Potential]

* The regression can be considered as low, since:
* it restores previous stable code for the customer
* and fixes a crash occurring after powercycling certain BlueField-2 systems.

Comments

Kelsey Skunberg April 14, 2021, 6:13 p.m. UTC | #1
Applied to Focal/bluefield master-next. Thank you! 

-Kelsey

On 2021-04-02 17:40:49 , Asmaa Mnebhi wrote:
> BugLink: https://bugs.launchpad.net/bugs/1922393
> 
> SRU Justification:
> 
> [Impact]
> 
> * The previous ipmb_host patch broke the customer tests. They requested to make the ipmb_host response time as long as before. In the case where the I2C bus is made very busy, the ipmb_host driver just drops slow/delayed responses. This fix elongates the timeout of the response.
> * Fixes a crash which occurs after powercycling certain BlueField-2 systems.
> * The crash is due to the handshake which takes too long to wait for a response at boot time.
> 
> [Fix]
> 
> * Before executing the IPMB handshake which loads the ipmb_host driver, detect if there is a slave detected and make sure that the slave can respond.
> * Free current_msg pointer right after sending the message so that sent transactions are independent of the response transactions.
> 
> [Test Case]
> 
> * soft reset
> * powercycle
> * run ipmitool commands
> * remove and load module manually
> 
> [Regression Potential]
> 
> * The regression can be considered as low, since:
> * it restores previous stable code for the customer
> * and fixes a crash occurring after powercycling certain BlueField-2 systems.
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team