Re: [PATCH bpf-next 1/2] bpf, net: Support SO_REUSEPORT sockets with bpf_sk_assign

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

 



On 5/25/23 7:49 PM, Kuniyuki Iwashima wrote:
We may want to use rcu_access_pointer(sk->sk_reuseport_cb) in
each lookup_reuseport() instead of adding sk_state check ?

And if someone has a weird program that creates multiple listeners and
disable SO_REUSEPORT for a listener that hits first in lhash2, checking
sk_reuseport_cb might not work ?

I am also not sure what the correct expectation is if the application disable SO_REUSEPORT in a sk after bind(). This is not something new or specific from the current patch though.

I hope no one does such though, checking sk_reuseport and sk_state could be better.

My previous comment on checking sk_state is to avoid the unnecessary inet_ehashfn() for the TCP_ESTABLISHED sk. Checking sk_reuseport_cb could also work since it should be NULL for established sk. However, not sure if it could be another cacheline access. The udp one is checking the sk_state also: "sk->sk_reuseport && sk->sk_state != TCP_ESTABLISHED".




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux