Re: [Regression] 6.0.16-6.0.18 kernel no longer return EADDRINUSE from bind

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

 



On Wed, Jan 11, 2023 at 04:52:21PM +0100, Paul Holzinger wrote:
> Hi all,
> 
> Since updating to 6.0.16 the bind() system call no longer fails with
> EADDRINUSE when the address is already in use.
> Instead bind() returns 1 in such a case, which is not a valid return
> value for this system call.
> 
> It works with the 6.0.15 kernel and earlier, 6.1.4 and 6.2-rc3 also
> seem to work.
> 
> Fedora bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2159066
> 
> To reproduce you can just run `ncat -l 5000` two times, the second one
> should fail. However it just uses a random port instead.
> 
> As far as I can tell this problem is caused by
> https://lore.kernel.org/stable/20221228144337.512799851@xxxxxxxxxxxxxxxxxxx/
> which did not backport commit 7a7160edf1bf properly.
> The line `int ret = -EADDRINUSE, port = snum, l3mdev;` is missing in
> net/ipv4/inet_connection_sock.c.
> This is the working 6.1 patch:
> https://lore.kernel.org/all/20221228144339.969733443@xxxxxxxxxxxxxxxxxxx/

As 6.0.y is now end-of-life, is there anything keeping you on that
kernel tree?  If you send a fix-up patch for this, I'll gladly apply it
and push out one more 6.0 release with it.

thanks,
g
reg k-h



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux