On Tue, Sep 1, 2020 at 10:46 PM Alexei Starovoitov <alexei.starovoitov@xxxxxxxxx> wrote: > > On Mon, Aug 31, 2020 at 06:50:03PM -0700, Andrii Nakryiko wrote: > > -static bool ipv4_is_fragment(const struct iphdr *ip) > > +static __noinline bool ipv4_is_fragment(const struct iphdr *ip) > > { > > uint16_t frag_off = ip->frag_off & bpf_htons(IP_OFFSET_MASK); > > return (ip->frag_off & bpf_htons(IP_MF)) != 0 || frag_off > 0; > > } > > > > -static struct iphdr *pkt_parse_ipv4(buf_t *pkt, struct iphdr *scratch) > > +static __always_inline struct iphdr *pkt_parse_ipv4(buf_t *pkt, struct iphdr *scratch) > > similar concern. Could you keep old and add new one with macro magic? Ok.