On Wed, Jun 13, 2018 at 06:17:41PM -0700, Eric Dumazet wrote: > On Wed, Jun 13, 2018 at 5:56 PM Andrei Vagin <ava...@openvz.org> wrote: > > > The commit f396922d862a added a check to not allow changing > > SO_REUSEADDR/SO_REUSEPORT on bound sockets. First, it doesn't > > take into account that TCP_REPAIR changes SO_REUSEADDR. Second, now it > > is impossible to restore a socket state and set SO_REUSEADDR, > > because the kernel always sets SO_REUSEADDR into zero after disabling > > the repair mode. > > > > > Hi Andrey > > This commit was reverted, do we still need this patch ?
I have seen that this patch was reverted. Probably I had to check net-next before sending it. I'm agree with Maciej Żenczykowski that it makes this code better. I have never understood why TCP_REPAIR drops SO_REUSEADDR. Now each time when we use TCP_REPAIR, we have to save a value of SO_REUSEADDR and restore it back after disabling TCP_REPAIR. With this patch, we will able to enable/disable TCP_REPAIR and don't care about sk_reuse. I will update the commit message and send the patch again. Thanks, Andrei