[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170503074820.23c79a62@redhat.com>
Date: Wed, 3 May 2017 07:48:20 +0200
From: Jesper Dangaard Brouer <brouer@...hat.com>
To: Alexei Starovoitov <alexei.starovoitov@...il.com>
Cc: kafai@...com, netdev@...r.kernel.org, eric@...it.org,
Daniel Borkmann <borkmann@...earbox.net>, brouer@...hat.com
Subject: Re: [net-next PATCH 2/4] samples/bpf: make bpf_load.c code
compatible with ELF maps section changes
On Tue, 2 May 2017 17:54:51 -0700
Alexei Starovoitov <alexei.starovoitov@...il.com> wrote:
> On Tue, May 02, 2017 at 02:31:56PM +0200, Jesper Dangaard Brouer wrote:
> > This patch does proper parsing of the ELF "maps" section, in-order to
> > be both backwards and forwards compatible with changes to the map
> > definition struct bpf_map_def, which gets compiled into the ELF file.
> >
> > The assumption is that new features with value zero, means that they
> > are not in-use. For backward compatibility where loading an ELF file
> > with a smaller struct bpf_map_def, only copy objects ELF size, leaving
> > rest of loaders struct zero. For forward compatibility where ELF file
> > have a larger struct bpf_map_def, only copy loaders own struct size
> > and verify that rest of the larger struct is zero, assuming this means
> > the newer feature was not activated, thus it should be safe for this
> > older loader to load this newer ELF file.
> >
> > Fixes: fb30d4b71214 ("bpf: Add tests for map-in-map")
> > Fixes: 409526bea3c3 ("samples/bpf: bpf_load.c detect and abort if ELF maps section size is wrong")
> > Signed-off-by: Jesper Dangaard Brouer <brouer@...hat.com>
>
> I would just merge patches 2 and 3 to reduce churn,
> but it looks like great improvement already.
I could have combined them, but I prefer keeping them separate to keep
the ELF changes separated from changing a sample program e.g.
map_perf_test_user.c. IHMO is is cleaner this way.
> Acked-by: Alexei Starovoitov <ast@...nel.org>
Thanks
--
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