All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Oltean <olteanv@gmail.com>
To: Jakub Kicinski <kuba@kernel.org>
Cc: Andrew Lunn <andrew@lunn.ch>,
	George McCollister <george.mccollister@gmail.com>,
	Vivien Didelot <vivien.didelot@gmail.com>,
	Florian Fainelli <f.fainelli@gmail.com>,
	"David S . Miller" <davem@davemloft.net>,
	netdev@vger.kernel.org,
	"open list:OPEN FIRMWARE AND..." <devicetree@vger.kernel.org>
Subject: Re: [PATCH net-next v2 2/3] net: dsa: add Arrow SpeedChips XRS700x driver
Date: Sat, 28 Nov 2020 03:45:05 +0200	[thread overview]
Message-ID: <20201128014505.hl5erlwnatej2io3@skbuf> (raw)
In-Reply-To: <20201127155649.5ce7ed82@kicinski-fedora-pc1c0hjn.DHCP.thefacebook.com>

On Fri, Nov 27, 2020 at 03:56:49PM -0800, Jakub Kicinski wrote:
> What is it with my email today, didn't get this one again.
>
> On Sat, 28 Nov 2020 01:39:16 +0200 Vladimir Oltean wrote:
> > On Sat, Nov 28, 2020 at 12:30:48AM +0100, Andrew Lunn wrote:
> > > > If there is a better alternative I'm all ears but having /proc and
> > > > ifconfig return zeros for error counts while ip link doesn't will lead
> > > > to too much confusion IMO. While delayed update of stats is a fact of
> > > > life for _years_ now (hence it was backed into the ethtool -C API).
> > >
> > > How about dev_seq_start() issues a netdev notifier chain event, asking
> > > devices which care to update their cached rtnl_link_stats64 counters.
> > > They can decide if their cache is too old, and do a blocking read for
> > > new values.
>
> Just to avoid breaking the suggestion that seqfiles don't sleep after
> .start? Hm. I thought BPF slept (or did cond_reshed()) in the middle of
> seq iteration. We should double check that seqfiles really can't sleep.

I don't think that seqfiles must not sleep after start(), at least
that's my interpretation and confirmed by some tests. I added a might_sleep()
in quite a few places and there is no issue now that we don't take the
RCU read-side lock any longer. Have you seen my previous reply to
George:

| > I suppose it doesn't really matter though since the documentation says
| > we can't sleep.
|
| You're talking, I suppose, about these words of wisdom in
| Documentation/filesystems/seq_file.rst?
|
| | However, the seq_file code (by design) will not sleep between the calls
| | to start() and stop(), so holding a lock during that time is a
| | reasonable thing to do. The seq_file code will also avoid taking any
| | other locks while the iterator is active.
|
| It _doesn't_ say that you can't sleep between start() and stop(), right?
| It just says that if you want to keep the seq_file iterator atomic, the
| seq_file code is not sabotaging you by sleeping. But you still could
| sleep if you wanted to.

  reply	other threads:[~2020-11-28  1:46 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-25 19:37 [PATCH net-next v2 0/3] Arrow SpeedChips XRS700x DSA Driver George McCollister
2020-11-25 19:37 ` [PATCH net-next v2 1/3] dsa: add support for Arrow XRS700x tag trailer George McCollister
2020-11-25 20:34   ` Andrew Lunn
2020-11-26 13:50     ` Vladimir Oltean
2020-11-26 14:01       ` Andrew Lunn
2020-11-26 14:28         ` Vladimir Oltean
2020-11-25 20:34   ` Andrew Lunn
2020-11-26  1:31   ` Florian Fainelli
2020-11-25 19:37 ` [PATCH net-next v2 2/3] net: dsa: add Arrow SpeedChips XRS700x driver George McCollister
2020-11-26  1:42   ` Jakub Kicinski
2020-11-26  2:25     ` George McCollister
2020-11-26 13:24       ` Vladimir Oltean
2020-11-26 17:56         ` Vladimir Oltean
2020-11-26 19:07           ` George McCollister
2020-11-26 22:05             ` Vladimir Oltean
2020-11-27 18:35               ` Jakub Kicinski
     [not found]                 ` <CAFSKS=MAdnR2jzmkQfTnSQZ7GY5x5KJE=oeqPCQdbZdf5n=4ZQ@mail.gmail.com>
2020-11-27 19:50                   ` Vladimir Oltean
2020-11-27 20:58                     ` George McCollister
2020-11-27 21:37                       ` Jakub Kicinski
2020-11-27 22:42                         ` Vladimir Oltean
2020-11-27 23:21                         ` Vladimir Oltean
2020-11-27 23:51                           ` Jakub Kicinski
2020-11-27 23:30                         ` Andrew Lunn
2020-11-27 23:39                           ` Vladimir Oltean
2020-11-27 23:56                             ` Jakub Kicinski
2020-11-28  1:45                               ` Vladimir Oltean [this message]
2020-11-28  0:02                             ` Vladimir Oltean
2020-11-28  0:39                               ` Andrew Lunn
2020-11-28  1:41                                 ` Vladimir Oltean
2020-11-28  2:15                                   ` Jakub Kicinski
2020-11-30 16:52                                     ` George McCollister
2020-11-30 23:50                                       ` Vladimir Oltean
2020-11-30 23:58                                         ` George McCollister
2020-12-01  0:19                                           ` Vladimir Oltean
2020-11-27 20:47                 ` Andrew Lunn
2020-11-27 21:13                   ` Jakub Kicinski
2020-11-27 21:23                     ` Vladimir Oltean
2020-11-27 21:36                       ` Andrew Lunn
2020-12-02  0:28                         ` Vladimir Oltean
2020-12-02  0:54                           ` Jakub Kicinski
2020-11-27 22:03                       ` Jakub Kicinski
2020-11-27 21:32                     ` Andrew Lunn
2020-11-27 22:14                       ` Jakub Kicinski
2020-11-27 22:46                         ` Andrew Lunn
2020-11-25 19:37 ` [PATCH net-next v2 3/3] dt-bindings: net: dsa: add bindings for xrs700x switches George McCollister
2020-11-26  1:30   ` Florian Fainelli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201128014505.hl5erlwnatej2io3@skbuf \
    --to=olteanv@gmail.com \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=f.fainelli@gmail.com \
    --cc=george.mccollister@gmail.com \
    --cc=kuba@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=vivien.didelot@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.