[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201117121650.74821f53@kicinski-fedora-PC1C0HJN.hsd1.ca.comcast.net>
Date: Tue, 17 Nov 2020 12:16:50 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: Claudiu Manoil <claudiu.manoil@....com>
Cc: netdev@...r.kernel.org, "David S . Miller" <davem@...emloft.net>,
Alex Marginean <alexandru.marginean@....com>,
Vladimir Oltean <vladimir.oltean@....com>
Subject: Re: [PATCH net] enetc: Workaround for MDIO register access issue
On Thu, 12 Nov 2020 20:26:08 +0200 Claudiu Manoil wrote:
> From: Alex Marginean <alexandru.marginean@....com>
>
> Due to a hardware issue, an access to MDIO registers
> that is concurrent with other ENETC register accesses
> may lead to the MDIO access being dropped or corrupted.
> The workaround introduces locking for all register accesses
> to the ENETC register space. To reduce performance impact,
> a readers-writers locking scheme has been implemented.
> The writer in this case is the MDIO access code (irrelevant
> whether that MDIO access is a register read or write), and
> the reader is any access code to non-MDIO ENETC registers.
> Also, the datapath functions acquire the read lock fewer times
> and use _hot accessors. All the rest of the code uses the _wa
> accessors which lock every register access.
> The commit introducing MDIO support is -
> commit ebfcb23d62ab ("enetc: Add ENETC PF level external MDIO support")
> but due to subsequent refactoring this patch is applicable on
> top of a later commit.
>
> Fixes: 6517798dd343 ("enetc: Make MDIO accessors more generic and export to include/linux/fsl")
> Signed-off-by: Alex Marginean <alexandru.marginean@....com>
> Signed-off-by: Vladimir Oltean <vladimir.oltean@....com>
> Signed-off-by: Claudiu Manoil <claudiu.manoil@....com>
Applied.
Powered by blists - more mailing lists