summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorToke Høiland-Jørgensen <toke@redhat.com>2019-06-28 11:12:34 +0200
committerDaniel Borkmann <daniel@iogearbox.net>2019-06-29 01:31:08 +0200
commitd5df2830ca9922d03a33940ea424c9a5f39f1162 (patch)
tree018eb91b4d8aadd03ea70c80ca4211ede0206942 /net
parentc8af5cd75e2411d5a5aacf115f59a5ff6b87f3fa (diff)
downloadlinux-d5df2830ca9922d03a33940ea424c9a5f39f1162.tar.gz
linux-d5df2830ca9922d03a33940ea424c9a5f39f1162.tar.bz2
linux-d5df2830ca9922d03a33940ea424c9a5f39f1162.zip
devmap/cpumap: Use flush list instead of bitmap
The socket map uses a linked list instead of a bitmap to keep track of which entries to flush. Do the same for devmap and cpumap, as this means we don't have to care about the map index when enqueueing things into the map (and so we can cache the map lookup). Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com> Acked-by: Jonathan Lemon <jonathan.lemon@gmail.com> Acked-by: Andrii Nakryiko <andriin@fb.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Diffstat (limited to 'net')
-rw-r--r--net/core/filter.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/net/core/filter.c b/net/core/filter.c
index dc8534be12fc..1e5fd37e9ab5 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
@@ -3523,7 +3523,6 @@ static int __bpf_tx_xdp_map(struct net_device *dev_rx, void *fwd,
err = dev_map_enqueue(dst, xdp, dev_rx);
if (unlikely(err))
return err;
- __dev_map_insert_ctx(map, index);
break;
}
case BPF_MAP_TYPE_CPUMAP: {
@@ -3532,7 +3531,6 @@ static int __bpf_tx_xdp_map(struct net_device *dev_rx, void *fwd,
err = cpu_map_enqueue(rcpu, xdp, dev_rx);
if (unlikely(err))
return err;
- __cpu_map_insert_ctx(map, index);
break;
}
case BPF_MAP_TYPE_XSKMAP: {