From: Hangbin Liu <liuhangbin@gmail.com>
To: Willem de Bruijn <willemdebruijn.kernel@gmail.com>
Cc: Jakub Kicinski <kuba@kernel.org>,
Willem de Bruijn <willemb@google.com>,
netdev@vger.kernel.org
Subject: Re: [Question] Any config needed for packetdrill testing?
Date: Tue, 15 Apr 2025 08:11:26 +0000 [thread overview]
Message-ID: <Z_4UrgawRVfK-hcT@fedora> (raw)
In-Reply-To: <67fd5419b11d8_c648429411@willemb.c.googlers.com.notmuch>
On Mon, Apr 14, 2025 at 02:29:45PM -0400, Willem de Bruijn wrote:
> Jakub Kicinski wrote:
> > On Mon, 14 Apr 2025 12:52:19 +0000 Hangbin Liu wrote:
> > > Hi Willem,
> > >
> > > I tried to run packetdrill in selftest, but doesn't work. e.g.
> > >
> > > # rpm -q packetdrill
> > > packetdrill-2.0~20220927gitc556afb-10.fc41.x86_64
> > > # make mrproper
> > > # vng --build \
> > > --config tools/testing/selftests/net/packetdrill/config \
> > > --config kernel/configs/debug.config
> > > # vng -v --run . --user root --cpus 4 -- \
> > > make -C tools/testing/selftests TARGETS=net/packetdrill run_tests
> > > make: Entering directory '/home/net/tools/testing/selftests'
> > > make[1]: Nothing to be done for 'all'.
> > > TAP version 13 1..66
> > > # timeout set to 45
> > > # selftests: net/packetdrill: tcp_blocking_blocking-accept.pkt
> > > # TAP version 13
> > > # 1..2
> > > #
> > > not ok 1 selftests: net/packetdrill: tcp_blocking_blocking-accept.pkt # TIMEOUT 45 seconds
> > > # timeout set to 45
> > > # selftests: net/packetdrill: tcp_blocking_blocking-connect.pkt
> > > # TAP version 13
> > > # 1..2
> > > # tcp_blocking_blocking-connect.pkt:13: error handling packet: live packet field ipv4_total_length: expected: 40 (0x28) vs actua
> > > l: 60 (0x3c)
> > > # script packet: 0.234272 . 1:1(0) ack 1
> > > # actual packet: 1.136447 S 0:0(0) win 65535 <mss 1460,sackOK,TS val 3684156121 ecr 0,nop,wscale 8>
> > > # not ok 1 ipv4
> > > # ok 2 ipv6
> > > # # Totals: pass:1 fail:1 xfail:0 xpass:0 skip:0 error:0
> > > not ok 2 selftests: net/packetdrill: tcp_blocking_blocking-connect.pkt # exit=1
> > >
> > > All the test failed. Even I use ksft_runner.sh it also failed.
> > >
> > > # ./ksft_runner.sh tcp_inq_client.pkt
> > > TAP version 13
> > > 1..2
> > > tcp_inq_client.pkt:17: error handling packet: live packet field ipv4_total_length: expected: 52 (0x34) vs actual: 60 (0x3c)
> > > script packet: 0.013980 . 1:1(0) ack 1 <nop,nop,TS val 200 ecr 700>
> > > actual packet: 1.056058 S 0:0(0) win 65535 <mss 1460,sackOK,TS val 1154 ecr 0,nop,wscale 8>
> > > not ok 1 ipv4
> > > ok 2 ipv6
> > > # Totals: pass:1 fail:1 xfail:0 xpass:0 skip:0 error:0
> > > # echo $?
> > > 1
> > >
> > > Is there any special config needed for packetdrill testing?
> >
> > FWIW we don't do anything special for packetdrill in NIPA.
> > Here is the config and the build logs:
> >
> > https://netdev-3.bots.linux.dev/vmksft-packetdrill/results/75222/config
> > https://netdev-3.bots.linux.dev/vmksft-packetdrill/results/77484/build/
>
> Nothing special should be required, indeed.
>
> Individual git commits also have explicit examples of how the code was
> built and tested. Such as
>
> commit 88395c071f08 ("selftests/net: packetdrill: import tcp/ecn, tcp/close, tcp/sack, tcp/tcp_info")
>
> make mrproper
> vng --build \
> --config tools/testing/selftests/net/packetdrill/config \
> --config kernel/configs/debug.config
> vng -v --run . --user root --cpus 4 -- \
> make -C tools/testing/selftests TARGETS=net/packetdrill run_tests
>
> and commit 8a405552fd3b ("selftests/net: integrate packetdrill with ksft"):
>
> Tested:
> make -C tools/testing/selftests \
> TARGETS=net/packetdrill \
> run_tests
>
> make -C tools/testing/selftests \
> TARGETS=net/packetdrill \
> install INSTALL_PATH=$KSFT_INSTALL_PATH
>
> # in virtme-ng
> ./run_kselftest.sh -c net/packetdrill
> ./run_kselftest.sh -t net/packetdrill:tcp_inq_client.pkt
Thanks, after debugging, I found the fedora packetdrill using cmake to
build, which cause the all the test failed. After using glibc-static to
build the packetdrill, all the test passed.
Although I'm not sure why cmake does not work.
Thanks
Hangbin
prev parent reply other threads:[~2025-04-15 8:11 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-14 12:52 [Question] Any config needed for packetdrill testing? Hangbin Liu
2025-04-14 17:13 ` Jakub Kicinski
2025-04-14 18:29 ` Willem de Bruijn
2025-04-15 8:11 ` Hangbin Liu [this message]
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=Z_4UrgawRVfK-hcT@fedora \
--to=liuhangbin@gmail.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=willemb@google.com \
--cc=willemdebruijn.kernel@gmail.com \
/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.