Commit a06d7296 authored by Magnus Karlsson's avatar Magnus Karlsson Committed by Alexei Starovoitov

libbpf: remove likely/unlikely in xsk.h

This patch removes the use of likely and unlikely in xsk.h since they
create a dependency on Linux headers as reported by several
users. There have also been reports that the use of these decreases
performance as the compiler puts the code on two different cache lines
instead of on a single one. All in all, I think we are better off
without them.

Fixes: 1cad0788 ("libbpf: add support for using AF_XDP sockets")
Signed-off-by: default avatarMagnus Karlsson <magnus.karlsson@intel.com>
Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
parent d5e63fdd
...@@ -109,7 +109,7 @@ static inline __u32 xsk_cons_nb_avail(struct xsk_ring_cons *r, __u32 nb) ...@@ -109,7 +109,7 @@ static inline __u32 xsk_cons_nb_avail(struct xsk_ring_cons *r, __u32 nb)
static inline size_t xsk_ring_prod__reserve(struct xsk_ring_prod *prod, static inline size_t xsk_ring_prod__reserve(struct xsk_ring_prod *prod,
size_t nb, __u32 *idx) size_t nb, __u32 *idx)
{ {
if (unlikely(xsk_prod_nb_free(prod, nb) < nb)) if (xsk_prod_nb_free(prod, nb) < nb)
return 0; return 0;
*idx = prod->cached_prod; *idx = prod->cached_prod;
...@@ -133,7 +133,7 @@ static inline size_t xsk_ring_cons__peek(struct xsk_ring_cons *cons, ...@@ -133,7 +133,7 @@ static inline size_t xsk_ring_cons__peek(struct xsk_ring_cons *cons,
{ {
size_t entries = xsk_cons_nb_avail(cons, nb); size_t entries = xsk_cons_nb_avail(cons, nb);
if (likely(entries > 0)) { if (entries > 0) {
/* Make sure we do not speculatively read the data before /* Make sure we do not speculatively read the data before
* we have received the packet buffers from the ring. * we have received the packet buffers from the ring.
*/ */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment