Re: [PATCH v2 net] net/smc: postpone sk_refcnt increment in connect()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 23/05/2022 17:21, liuyacan@xxxxxxxxxxxxxxxx wrote:
>>>> This is a rather unusual problem that can come up when fallback=true BEFORE smc_connect()
>>>> is called. But nevertheless, it is a problem.
>>>>
>>>> Right now I am not sure if it is okay when we NOT hold a ref to smc->sk during all fallback
>>>> processing. This change also conflicts with a patch that is already on net-next (3aba1030).
>>>
>>> Do you mean put the ref to smc->sk during all fallback processing unconditionally and remove 
>>> the fallback branch sock_put() in __smc_release()?
>>
>> What I had in mind was to eventually call sock_put() in __smc_release() even if sk->sk_state == SMC_INIT
>> (currently the extra check in the if() for sk->sk_state != SMC_INIT prevents the sock_put()), but only
>> when it is sure that we actually reached the sock_hold() in smc_connect() before.
>>
>> But maybe we find out that the sock_hold() is not needed for fallback sockets, I don't know...
> 
> I do think the sock_hold()/sock_put() for smc->sk is a bit complicated, Emm, I'm not sure if it 
> can be simplified..
> 
> In fact, I'm sure there must be another ref count issue in my environment,but I haven't caught it yet.
> 

Can you check my latest mail from a minute ago in thread
"Re: [PATCH net-next v2] net/smc: align the connect behaviour with TCP"
I think this answer also affects our discussion.



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux