[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPhsuW7nhHV=SzgeW3fxQ0t=ciKczJLbouarYVSJP=oS6j6WbA@mail.gmail.com>
Date: Mon, 14 Sep 2020 10:14:38 -0700
From: Song Liu <song@...nel.org>
To: "Loftus, Ciara" <ciara.loftus@...el.com>
Cc: Björn Töpel <bjorn.topel@...il.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"bpf@...r.kernel.org" <bpf@...r.kernel.org>,
"ast@...nel.org" <ast@...nel.org>,
"daniel@...earbox.net" <daniel@...earbox.net>,
"Topel, Bjorn" <bjorn.topel@...el.com>,
"maximmi@...dia.com" <maximmi@...dia.com>,
"Karlsson, Magnus" <magnus.karlsson@...el.com>,
"jonathan.lemon@...il.com" <jonathan.lemon@...il.com>
Subject: Re: [PATCH bpf] xsk: fix number of pinned pages/umem size discrepancy
On Thu, Sep 10, 2020 at 2:29 AM Loftus, Ciara <ciara.loftus@...el.com> wrote:
>
> >
> > From: Björn Töpel <bjorn.topel@...el.com>
> >
> > For AF_XDP sockets, there was a discrepancy between the number of of
> > pinned pages and the size of the umem region.
> >
> > The size of the umem region is used to validate the AF_XDP descriptor
> > addresses. The logic that pinned the pages covered by the region only
> > took whole pages into consideration, creating a mismatch between the
> > size and pinned pages. A user could then pass AF_XDP addresses outside
> > the range of pinned pages, but still within the size of the region,
> > crashing the kernel.
> >
> > This change correctly calculates the number of pages to be
> > pinned. Further, the size check for the aligned mode is
> > simplified. Now the code simply checks if the size is divisible by the
> > chunk size.
> >
> > Fixes: bbff2f321a86 ("xsk: new descriptor addressing scheme")
> > Reported-by: Ciara Loftus <ciara.loftus@...el.com>
> > Signed-off-by: Björn Töpel <bjorn.topel@...el.com>
>
> Thanks for the patch Björn.
>
> Tested-by: Ciara Loftus <ciara.loftus@...el.com>
Acked-by: Song Liu <songliubraving@...com>
Powered by blists - more mailing lists