lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <acd09ebe17b438fad20d4863dfece84144b5e027.camel@sipsolutions.net>
Date:   Fri, 30 Apr 2021 21:02:41 +0200
From:   Johannes Berg <johannes@...solutions.net>
To:     Nikolai Zhubr <zhubr.2@...il.com>
Cc:     Chris Snook <chris.snook@...il.com>, netdev@...r.kernel.org
Subject: Re: A problem with "ip=..." ipconfig and Atheros alx driver.

On Fri, 2021-04-30 at 20:15 +0300, Nikolai Zhubr wrote:
> Hi Johannes,
> 
> 30.04.2021 15:08, Johannes Berg:
> > > rtnl_unlock(). Hence this delay and timeout.
> > 
> > Fun. But we can just do it synchronously?
> > 
> > https://p.sipsolutions.net/e4f076ed1b4c8a78.txt
> 
> Wow, that was quick! Thanks! However, unfortunately this patch still 
> does not quite fix the problem. Although alx_check_link() now gets 
> called synchronously at open, it somehow does not pass below the "if 
> (old_speed == hw->link_speed) return" line here. I'd guess it is because 
> the chip is not yet able to report meaningfull values immediately after 
> initialization. The result is still the same: 120 seconds timeout 
> happens, then the "eth0: NIC Up: 1 Gbps Full" message appears 
> immediately and all is fine after that.

Yeah so ... I guess we could poll it, but that's really quite ugly?

I wonder if we can detect this case somehow?

The more reasonable thing is probably to just rework the locking here,
but that's a touchy subject I guess.

How about this?

https://p.sipsolutions.net/5adbe659fb061f06.txt

johannes

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ