Skip to content
Snippets Groups Projects
Commit a3202713 authored by Felix Maurer's avatar Felix Maurer Committed by Yauheni Kaliuta
Browse files

net: add per-cpu storage and net->core_stats

Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2130850


Conflicts:
- drivers/net/vxlan.c: file is not moved to drivers/net/vxlan/vxlan_core.c
  due to missing 67653936 ("vxlan: move to its own directory");
  context difference due to missing 4095e0e1 ("drivers: vxlan:
  vnifilter: per vni stats")
- net/core/dev.c: code difference in __netif_receive_skb_core due to
  already applied 9f8ed577 ("net: skb: rename
  SKB_DROP_REASON_PTYPE_ABSENT"). Result is like upstream now.
- net/core/gro_cells.c: context difference due to already applied
  5dcd08cd ("net: Fix data-races around netdev_max_backlog.")

commit 625788b5
Author: Eric Dumazet <edumazet@google.com>
Date:   Thu Mar 10 21:14:20 2022 -0800

    net: add per-cpu storage and net->core_stats

    Before adding yet another possibly contended atomic_long_t,
    it is time to add per-cpu storage for existing ones:
     dev->tx_dropped, dev->rx_dropped, and dev->rx_nohandler

    Because many devices do not have to increment such counters,
    allocate the per-cpu storage on demand, so that dev_get_stats()
    does not have to spend considerable time folding zero counters.

    Note that some drivers have abused these counters which
    were supposed to be only used by core networking stack.

    v4: should use per_cpu_ptr() in dev_get_stats() (Jakub)
    v3: added a READ_ONCE() in netdev_core_stats_alloc() (Paolo)
    v2: add a missing include (reported by kernel test robot <lkp@intel.com>)
        Change in netdev_core_stats_alloc() (Jakub)

Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
    Cc: jeffreyji <jeffreyji@google.com>
Reviewed-by: default avatarBrian Vazquez <brianvv@google.com>
Reviewed-by: default avatarJakub Kicinski <kuba@kernel.org>
Acked-by: default avatarPaolo Abeni <pabeni@redhat.com>
    Link: https://lore.kernel.org/r/20220311051420.2608812-1-eric.dumazet@gmail.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>

Signed-off-by: default avatarFelix Maurer <fmaurer@redhat.com>
parent c4e71d92
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment