On Mon, Mar 10, 2025 at 2:15 AM Toke Høiland-Jørgensen <toke@xxxxxxx> wrote:
Mina Almasry <almasrymina@xxxxxxxxxx> writes:
From: Jesper Dangaard Brouer <hawk@xxxxxxxxxx>
We frequently consult with Jesper's out-of-tree page_pool benchmark to
evaluate page_pool changes.
Consider importing the benchmark into the upstream linux kernel tree so
that (a) we're all running the same version, (b) pave the way for shared
improvements, and (c) maybe one day integrate it with nipa, if possible.
I imported the bench_page_pool_simple from commit 35b1716d0c30 ("Add
page_bench06_walk_all"), from this repository:
https://github.com/netoptimizer/prototype-kernel.git
I imported the benchmark, largely as-is. I only fixed build or
checkpatch issues.
Cc: Jesper Dangaard Brouer <hawk@xxxxxxxxxx>
Cc: Ilias Apalodimas <ilias.apalodimas@xxxxxxxxxx>
Cc: Jakub Kicinski <kuba@xxxxxxxxxx>
Cc: Toke Høiland-Jørgensen <toke@xxxxxxx>
Cc: netdev@xxxxxxxxxxxxxxx
Signed-off-by: Mina Almasry <almasrymina@xxxxxxxxxx>
---
RFC discussion points:
- Desirable to import it?
I think so, yeah.
- Can the benchmark be imported as-is for an initial version? Or needs
lots of modifications?
One thing that I was discussing with Jesper the other day is that the
current version allocates the page_pool itself in softirq context, which
leads to some "may sleep" warning. I think we should fix that before
upstreaming.
I don't think I saw that warning for whatever reason. Do you by any
chance have a fix that I can squash? Or do you think it is very
critical to fix this before upstreaming? I.e. not follow up with a
fix?