Re: [PATCH] ipmi: fix potential deadlock on &kcs_bmc->lock

From: Andrew Jeffery
Date: Wed Jul 05 2023 - 08:01:16 EST




On Tue, 4 Jul 2023, at 23:57, Corey Minyard wrote:
> On Fri, Jun 30, 2023 at 10:31:02AM +0930, Andrew Jeffery wrote:
>> Hi Corey, Chengfeng,
>>
>> On Wed, 28 Jun 2023, at 21:17, Corey Minyard wrote:
>> > Indeed, this looks like an issue.
>> >
>> > Andrew, any opinions on this? The attached patch will work, the other
>> > option would be to disable interrupts when calling
>> > kcs_bmc_handle_event() in the timer handler. But then you have to worry
>> > about RT.
>>
>> Right, I think we'd do best to not over-complicate things.
>> spin_lock_irq{save,restore}() are the intuitive choice to me.
>>
>> I'll follow up with R-b/T-b tags once I've booted the patch
>> and done some testing.
>
> Thanks. This is in my for-next tree, I'd like to get this in the merge
> window, which I believe ends this Sunday.
>

I've successfully booted an IBM Rainier machine with this patch
applied. Rainier is a Power10-based platform managed by an AST2600 BMC.
The boot process makes heavy use of one of the KCS devices as part of
an MCTP transport binding implementation between the BMC and host
firmware.

Reviewed-by: Andrew Jeffery <andrew@xxxxxxxx>
Tested-by: Andrew Jeffery <andrew@xxxxxxxx>

Thanks,

Andrew