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: <kyvqil6vcpyew3he37uy6tdseqtcvutmd5h4chltwy37ddnnvz@lsvjhfynq5pw>
Date: Mon, 24 Jun 2024 16:40:51 +0300
From: Serge Semin <fancer.lancer@...il.com>
To: "Russell King (Oracle)" <linux@...linux.org.uk>
Cc: Andrew Halaney <ahalaney@...hat.com>, 
	Alexandre Torgue <alexandre.torgue@...s.st.com>, Jose Abreu <joabreu@...opsys.com>, 
	"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>, 
	Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, 
	Maxime Coquelin <mcoquelin.stm32@...il.com>, netdev@...r.kernel.org, linux-stm32@...md-mailman.stormreply.com, 
	linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH RFC net-next v2 3/8] net: stmmac: dwmac1000: convert
 sgmii/rgmii "pcs" to phylink

Hi Russel

On Mon, Jun 24, 2024 at 04:32:53AM +0300, Serge Semin wrote:
> Hi Russell
> 
> On Tue, Jun 18, 2024 at 01:26:52PM +0300, Serge Semin wrote:
> > On Fri, Jun 14, 2024 at 12:14:21AM +0300, Serge Semin wrote:
> > > On Wed, Jun 12, 2024 at 11:04:11PM +0100, Russell King (Oracle) wrote:
> > > > On Tue, Jun 11, 2024 at 03:25:14PM +0300, Serge Semin wrote:
> > > > > Hi Russell, Andrew
> > > > >
> > > > > Should we have a DW IP-core-specific getter like
> > > > > stmmac_ops::pcs_get_config_reg() which would return the
> > > > > tx_config_reg[15:0] field then we could have cleared the IRQ by just
> > > > > calling it, we could have had the fields generically
> > > > > parsed in the dwmac_pcs_isr() handler and in the
> > > > > phylink_pcs_ops::pcs_get_state().
> > > > 
> > > 
> > > [...]
> > > 
> > > > 
> > > > There's a good reason for this - dealing with latched-low link failed
> > > > indications, it's necessary that pcs_get_state() reports that the link
> > > > failed if _sometime_ between the last time it was called and the next
> > > > time the link has failed.
> > > > 
> > > > So, I'm afraid your idea of simplifying it doesn't sound to me like a
> > > > good idea.
> > > 
> > > No caching or latched link state indications. Both the GMAC_RGSMIIIS
> > > and GMAC_PHYIF_CONTROL_STATUS registers contain the actual link state
> > > retrieved the PHY. stmmac_pcs_get_config_reg() will just return the
> > > current link state.
> > > 
> > > Perhaps my suggestion might haven't been well described. Providing the
> > > patches with the respective changes shall better describe what was
> > > meant. So in a few days I'll submit an incremental patch(es) with the
> > > proposed modifications for your series
> > 
> 
> > The incremental patchset is ready. I need to give it some more
> > tests, then rebase onto the kernel 6.10. It'll be done in one-two
> > days.
> 
> It turned out I has created my series on top of your v1 series. I just
> finished rebasing it onto v2. The only thing left is to test it out.
> I'll do that today and then submit the series in-reply to your v2
> email thread. Sorry for making you wait once again.

Finally I've done that.
https://lore.kernel.org/netdev/20240624132802.14238-1-fancer.lancer@gmail.com

The update has turned to be a bit more bulky than I intended, but the
resultant code looks neat and small consolidated in the
stmmac_pcs.c/stmmac_pcs.h files with just three DW *MAC HW-abstraction
callbacks defined in the DW GMAC and DW QoS Eth core modules.

I did my best to provide the changes in the incremental manner with no
driver breakage. Hopefully I didn't fail that.) As before you can
re-shuffle the patches and the change they content whatever you think
would be better in the final series.

-Serge(y)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ