On Sun, 2022-03-20 at 02:26 +0100, Andrew Lunn wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the > content is safe > > On Fri, Mar 18, 2022 at 02:25:37PM +0530, Prasanna Vengateshan wrote: > > Added support for get_eth_**_stats() (phy/mac/ctrl) and > > get_stats64() > > > > Reused the KSZ common APIs for get_ethtool_stats() & get_sset_count() > > along with relevant lan937x hooks for KSZ common layer and added > > support for get_strings() > > > > +static void lan937x_get_stats64(struct dsa_switch *ds, int port, > > + struct rtnl_link_stats64 *s) > > +{ > > + struct ksz_device *dev = ds->priv; > > + struct ksz_port_mib *mib = &dev->ports[port].mib; > > + u64 *ctr = mib->counters; > > + > > + mutex_lock(&mib->cnt_mutex); > > I think for stats64 you are not allowed to block. > > https://lore.kernel.org/netdev/20220218104330.g3vfbpdqltdkp4sr@skbuf/T/ > > There was talk of changing this. but i don't think it ever happened. > > Andrew Looks like it has been changed from mutex_lock() to spin_lock() since ndo_get_stats64 runs in atomic context. I will adopt the same. Thanks for the feedback. Prasanna V