Re: [PATCH net 1/3] net/smc: Resolve the race between link group access and termination

From: Karsten Graul
Date: Tue Jan 11 2022 - 10:46:50 EST


On 11/01/2022 16:36, Wen Gu wrote:
> Thanks for your review.
>
> On 2022/1/11 4:23 pm, Karsten Graul wrote:
>> On 10/01/2022 10:26, Wen Gu wrote:
>>> We encountered some crashes caused by the race between the access
>>> and the termination of link groups.
>>>
>>
>> These waiters (seaparate ones for smcd and smcr) are used to wait for all lgrs
>> to be deleted when a module unload or reboot was triggered, so it must only be
>> woken up when the lgr is actually freed.
>
> Thanks for your reminding, I will move the wake-up code to __smc_lgr_free().
>
> And maybe the vlan put and device put of smcd are also need to be moved
> to __smc_lgr_free()?, because it also seems to be more suitable to put these
> resources when lgr is actually freed. What do you think?

Keep the calls to smc_ism_put_vlan() and put_device() in smc_lgr_free(),
thats okay for SMC-D.