[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180802155336.15169974@redhat.com>
Date: Thu, 2 Aug 2018 15:53:36 +0200
From: Jesper Dangaard Brouer <brouer@...hat.com>
To: Toshiaki Makita <toshiaki.makita1@...il.com>
Cc: Toshiaki Makita <makita.toshiaki@....ntt.co.jp>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>, netdev@...r.kernel.org,
Jakub Kicinski <jakub.kicinski@...ronome.com>,
John Fastabend <john.fastabend@...il.com>, brouer@...hat.com
Subject: Re: [PATCH v7 bpf-next 05/10] veth: Handle xdp_frames in xdp napi
ring
On Thu, 2 Aug 2018 22:17:53 +0900
Toshiaki Makita <toshiaki.makita1@...il.com> wrote:
> On 18/08/02 (木) 20:45, Jesper Dangaard Brouer wrote:
> > On Thu, 2 Aug 2018 19:55:09 +0900
> > Toshiaki Makita <makita.toshiaki@....ntt.co.jp> wrote:
> >
> >> + headroom = frame->data - delta - (void *)frame;
> >
> > Your calculation of headroom is still adding an assumption that
> > xdp_frame is located in the top of data area, that is unnecessary.
> >
> > The headroom can be calculated as:
> >
> > headroom = sizeof(struct xdp_frame) + frame->headroom - delta;
>
> Thanks. But I'm not sure I get what you are requesting.
I'm simply requesting you do not use the (void *)frame pointer address,
to calculate the headroom, as it can be calculated in another way.
> Supposing xdp_frame is not located in the top of data area, what ensures
> that additional sizeof(struct xdp_frame) can be used?
The calculation in convert_to_xdp_frame() assures this. If we later
add an xdp_frame that is not located in the top of data area, and want
to change the reserved headroom size, then we deal with it, and update
the code.
--
Best regards,
Jesper Dangaard Brouer
MSc.CS, Principal Kernel Engineer at Red Hat
LinkedIn: http://www.linkedin.com/in/brouer
Powered by blists - more mailing lists