Re: [PATCH 1/1] net: Add SO_REUSEPORT_LISTEN_OFF socket option as drain mode
From: Eric Dumazet <hidden>
Date: 2016-03-25 13:17:27
From: Eric Dumazet <hidden>
Date: 2016-03-25 13:17:27
On Fri, 2016-03-25 at 12:21 +0100, Yann Ylavic wrote:
Not my intention, you guys know what's the better for the kernel and its APIs. My concern is (was) admittedly due to my own lack of knowledge of (e)BPF, hence how much of kernel internals I'd need to know to make the SO_REUSEPORT work in my case. But sure, any of the help suggested above would make it go away, I'll stay tuned.
Most of the time, the BPF filter can be trivial. If your server has a multi queue NIC with 16 queues on a 16 cpus host, it would be natural to use 16 listeners, to properly use the NIC features (RSS). BPF program would be A = QUEUE_NUMBER(skb); RETURN A; If you chose to have 4 listeners instead, for whatever reasons. A = QUEUE_NUMBER(skb); A = A & 3; RETURN A; You also can use A = CURRENT_CPU; RETURN A;