From: Saket Kumar Bhaskar <skb99@linux.ibm.com>
To: Venkat Rao Bagalkote <venkat88@linux.ibm.com>
Cc: bpf@vger.kernel.org, netdev@vger.kernel.org,
linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org,
ast@kernel.org, hbathini@linux.ibm.com, andrii@kernel.org,
aleksander.lobakin@intel.com, daniel@iogearbox.net,
davem@davemloft.net, kuba@kernel.org, hawk@kernel.org,
martin.lau@linux.dev, eddyz87@gmail.com, song@kernel.org,
yonghong.song@linux.dev, john.fastabend@gmail.com,
kpsingh@kernel.org
Subject: Re: [PATCH v2 0/2] Fix xdp_adjust_frags_tail_grow selftest on powerpc
Date: Tue, 11 Mar 2025 10:02:06 +0530 [thread overview]
Message-ID: <Z8+8xoSUri3u6+JB@linux.ibm.com> (raw)
In-Reply-To: <96a959ec-c6a6-4740-a560-34134b2af7f7@linux.ibm.com>
On Fri, Mar 07, 2025 at 08:54:00PM +0530, Venkat Rao Bagalkote wrote:
>
> On 05/03/25 10:43 pm, Saket Kumar Bhaskar wrote:
> > For platforms on powerpc architecture with a default page size greater
> > than 4096, there was an inconsistency in fragment size calculation.
> > This caused the BPF selftest xdp_adjust_tail/xdp_adjust_frags_tail_grow
> > to fail on powerpc.
> >
> > The issue occurred because the fragment buffer size in
> > bpf_prog_test_run_xdp() was set to 4096, while the actual data size in
> > the fragment within the shared skb was checked against PAGE_SIZE
> > (65536 on powerpc) in min_t, causing it to exceed 4096 and be set
> > accordingly. This discrepancy led to an overflow when
> > bpf_xdp_frags_increase_tail() checked for tailroom, as skb_frag_size(frag)
> > could be greater than rxq->frag_size (when PAGE_SIZE > 4096).
> >
> > This change fixes:
> >
> > 1. test_run by getting the correct arch dependent PAGE_SIZE.
> > 2. selftest by caculating tailroom and getting correct PAGE_SIZE.
> >
> > Changes:
> > v1 -> v2:
> > * Address comments from Alexander
> > * Use dynamic page size, cacheline size and size of
> > struct skb_shared_info to calculate parameters.
> > * Fixed both test_run and selftest.
> >
> > v1: https://lore.kernel.org/all/20250122183720.1411176-1-skb99@linux.ibm.com/
> >
> > Saket Kumar Bhaskar (2):
> > bpf, test_run: Replace hardcoded page size with dynamic PAGE_SIZE in
> > test_run
> > selftests/bpf: Refactor xdp_adjust_tail selftest with dynamic sizing
> >
> > .../bpf/prog_tests/xdp_adjust_tail.c | 160 +++++++++++++-----
> > .../bpf/progs/test_xdp_adjust_tail_grow.c | 41 +++--
> > 2 files changed, 149 insertions(+), 52 deletions(-)
> >
> Applied the patch series on the bpf-next and patch works as expected.
>
>
> With Out the Patch:
>
> test_xdp_adjust_frags_tail_grow:PASS:9Kb+10b 0 nsec
> test_xdp_adjust_frags_tail_grow:FAIL:9Kb+10b retval unexpected 9Kb+10b
> retval: actual 3 != expected 1
> test_xdp_adjust_frags_tail_grow:FAIL:9Kb+10b size unexpected 9Kb+10b size:
> actual 13097 != expected 9001
> #583/5 xdp_adjust_tail/xdp_adjust_frags_tail_grow:FAIL
> #583 xdp_adjust_tail:FAIL
> Summary: 0/4 PASSED, 0 SKIPPED, 1 FAILED
>
>
> With Patch:
>
> # ./test_progs -t xdp_adjust_tail
> #583/1 xdp_adjust_tail/xdp_adjust_tail_shrink:OK
> #583/2 xdp_adjust_tail/xdp_adjust_tail_grow:OK
> #583/3 xdp_adjust_tail/xdp_adjust_tail_grow2:OK
> #583/4 xdp_adjust_tail/xdp_adjust_frags_tail_shrink:OK
> #583/5 xdp_adjust_tail/xdp_adjust_frags_tail_grow:OK
> #583 xdp_adjust_tail:OK
> Summary: 1/5 PASSED, 0 SKIPPED, 0 FAILED
>
>
> Please add below tag to all the patches in series.
>
> Tested-by: Venkat Rao Bagalkote <venkat88@linux.ibm.com>
>
>
> Regards,
>
> Venkat.
>
Thanks for testing this Venkat.
Regards,
Saket
next prev parent reply other threads:[~2025-03-11 4:32 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-05 17:13 [PATCH v2 0/2] Fix xdp_adjust_frags_tail_grow selftest on powerpc Saket Kumar Bhaskar
2025-03-05 17:13 ` [PATCH v2 1/2] bpf, test_run: Replace hardcoded page size with dynamic PAGE_SIZE in test_run Saket Kumar Bhaskar
2025-03-05 17:13 ` [PATCH v2 2/2] selftests/bpf: Refactor xdp_adjust_tail selftest with dynamic sizing Saket Kumar Bhaskar
2025-03-07 15:24 ` [PATCH v2 0/2] Fix xdp_adjust_frags_tail_grow selftest on powerpc Venkat Rao Bagalkote
2025-03-11 4:32 ` Saket Kumar Bhaskar [this message]
2025-03-20 8:20 ` Saket Kumar Bhaskar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Z8+8xoSUri3u6+JB@linux.ibm.com \
--to=skb99@linux.ibm.com \
--cc=aleksander.lobakin@intel.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=eddyz87@gmail.com \
--cc=hawk@kernel.org \
--cc=hbathini@linux.ibm.com \
--cc=john.fastabend@gmail.com \
--cc=kpsingh@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=martin.lau@linux.dev \
--cc=netdev@vger.kernel.org \
--cc=song@kernel.org \
--cc=venkat88@linux.ibm.com \
--cc=yonghong.song@linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.