On 2021-02-19 18:05, Toke Høiland-Jørgensen wrote:
Björn Töpel <bjorn.to...@gmail.com> writes:


[...]


@@ -4110,22 +4094,17 @@ static const struct bpf_func_proto 
bpf_xdp_redirect_proto = {
        .arg2_type      = ARG_ANYTHING,
  };
-BPF_CALL_3(bpf_xdp_redirect_map, struct bpf_map *, map, u32, ifindex,
-          u64, flags)
+static __always_inline s64 __bpf_xdp_redirect_map(struct bpf_map *map, u32 
ifindex, u64 flags,
+                                                 void *lookup_elem(struct 
bpf_map *map,
+                                                                   u32 key))
  {
        struct bpf_redirect_info *ri = this_cpu_ptr(&bpf_redirect_info);
- /* Lower bits of the flags are used as return code on lookup failure */
        if (unlikely(flags > XDP_TX))
                return XDP_ABORTED;
- ri->tgt_value = __xdp_map_lookup_elem(map, ifindex);
+       ri->tgt_value = lookup_elem(map, ifindex);
        if (unlikely(!ri->tgt_value)) {
-               /* If the lookup fails we want to clear out the state in the
-                * redirect_info struct completely, so that if an eBPF program
-                * performs multiple lookups, the last one always takes
-                * precedence.
-                */

Why remove the comments?


Ugh, no reason. I'll do a v2. LKP had a warning as well.


Thanks,
Björn

[...]

Reply via email to