[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5963BFE6.2050403@gmail.com>
Date: Mon, 10 Jul 2017 10:56:54 -0700
From: John Fastabend <john.fastabend@...il.com>
To: Jesper Dangaard Brouer <brouer@...hat.com>
CC: netdev@...r.kernel.org, davem@...emloft.net, andy@...yhouse.net,
daniel@...earbox.net, ast@...com
Subject: Re: [RFC PATCH 10/12] xdp: Add batching support to redirect map
On 07/10/2017 10:53 AM, Jesper Dangaard Brouer wrote:
> On Fri, 07 Jul 2017 10:37:59 -0700
> John Fastabend <john.fastabend@...il.com> wrote:
>
>> diff --git a/kernel/bpf/devmap.c b/kernel/bpf/devmap.c
>> index 36dc13de..656e334 100644
>> --- a/kernel/bpf/devmap.c
>> +++ b/kernel/bpf/devmap.c
> [...]
>>
>> +void __dev_map_insert_ctx(struct bpf_map *map, u32 key)
>> +{
>> + struct bpf_dtab *dtab = container_of(map, struct bpf_dtab, map);
>> + unsigned long *bitmap = this_cpu_ptr(dtab->flush_needed);
>> +
>> + set_bit(key, bitmap);
>> +}
>
> I don't like that this adds an atomic op (set_bit) per packet on a fast-path.
> It shows up on a perf top #6 with xdp_redirect_map.
>
Its a per cpu bitmap so __set_bit() should be fine here.
Thanks,
John
Powered by blists - more mailing lists