bpf: Add endian modifiers to fix endian warnings
authorBen Dooks <ben.dooks@sifive.com>
Thu, 14 Jul 2022 10:51:01 +0000 (11:51 +0100)
committerDaniel Borkmann <daniel@iogearbox.net>
Thu, 14 Jul 2022 21:00:48 +0000 (23:00 +0200)
commit96a233e600df351bcb06e3c20efe048855552926
tree055919fdb3e667d55bf6e0b6964a81c2b953a0cf
parent5002615a37b1e23a4b51c386ee22c8f90a70b4dd
bpf: Add endian modifiers to fix endian warnings

A couple of the syscalls which load values (bpf_skb_load_helper_16() and
bpf_skb_load_helper_32()) are using u16/u32 types which are triggering
warnings as they are then converted from big-endian to CPU-endian. Fix
these by making the types __be instead.

Fixes the following sparse warnings:

  net/core/filter.c:246:32: warning: cast to restricted __be16
  net/core/filter.c:246:32: warning: cast to restricted __be16
  net/core/filter.c:246:32: warning: cast to restricted __be16
  net/core/filter.c:246:32: warning: cast to restricted __be16
  net/core/filter.c:273:32: warning: cast to restricted __be32
  net/core/filter.c:273:32: warning: cast to restricted __be32
  net/core/filter.c:273:32: warning: cast to restricted __be32
  net/core/filter.c:273:32: warning: cast to restricted __be32
  net/core/filter.c:273:32: warning: cast to restricted __be32
  net/core/filter.c:273:32: warning: cast to restricted __be32

Signed-off-by: Ben Dooks <ben.dooks@sifive.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20220714105101.297304-1-ben.dooks@sifive.com
net/core/filter.c