DPDK usage discussions
 help / color / mirror / Atom feed
From: Kiran Vedere <kiranv@mellanox.com>
To: Jim Vaigl <jimv@rockbridgesoftware.com>,
	Asaf Penso <asafp@mellanox.com>,
	 'Stephen Hemminger' <stephen@networkplumber.org>
Cc: "users@dpdk.org" <users@dpdk.org>,
	Erez Ferber <erezf@mellanox.com>, Olga Shern <olgas@mellanox.com>,
	Danny Vogel <dan@mellanoxfederal.com>
Subject: Re: [dpdk-users] DPDK on Mellanox BlueField Ref Platform
Date: Fri, 4 Oct 2019 18:28:09 +0000	[thread overview]
Message-ID: <AM6PR05MB59105B9A40D7861A98CD7B73AC9E0@AM6PR05MB5910.eurprd05.prod.outlook.com> (raw)
In-Reply-To: <005001d57ada$1cc52900$564f7b00$@com>

Hi Jim,

I tried your test with 9000 Byte MTU Size. On BlueField Reference Platform I set the MTU of the interface to 9000 and on TRex I am sending 8096 size byte packets. I am able to loop back packets fine w/o any issues. Below is the command line I use for testpmd

./testpmd --log-level="mlx5,8" -l 3,4,5,6,7,8,9,10,11,12,13,14,15 -n 4 -w 17:00.0 --socket-mem=2048 -- --socket-num=0 --burst=64 --txd=2048 --rxd=2048 --mbcache=512 --rxq=12 --txq=12 --nb-cores=12 -i -a --forward-mode=mac --max-pkt-len=9000 --mbuf-size=16384

Two things to consider: The max Rx packet len  is used by the PMD during its Rx Queue initialization. By default this is set to 1518 Bytes for testpmd/l3fwd. For jumbo frames you need to pass --max-pkt-len=9000 (for testpmd) or --enable-jumbo --max-pkt-len=9000 (for l3fwd). Are you passing these values to l3fwd/testpmd when you run your test? Also since the mbuf_size is 2048 by default, you need to increase the mbuf_size to > Jumbo frame size unless you enable scatter in the PMD. For testpmd you can increase the mbuf size by using --mbuf-size parameter. For l3fwd I don't think there is a command line option to increase mbuf size in runtime. So you might need to recompile the l3fwd code to increase mbuf size. Are you doing this?

Hope this helps.

Regards,
Kiran



-----Original Message-----
From: Jim Vaigl <jimv@rockbridgesoftware.com> 
Sent: Friday, October 4, 2019 1:35 PM
To: Asaf Penso <asafp@mellanox.com>; 'Stephen Hemminger' <stephen@networkplumber.org>
Cc: users@dpdk.org; Kiran Vedere <kiranv@mellanox.com>; Erez Ferber <erezf@mellanox.com>; Olga Shern <olgas@mellanox.com>; Danny Vogel <dan@mellanoxfederal.com>
Subject: RE: [dpdk-users] DPDK on Mellanox BlueField Ref Platform

A final update on this issue.  Kiran Vedere went above and beyond the call of duty: he completely reproduced my hardware setup, showed that it worked using trex to generate similar traffic to mine, and then provided me with a bundled-up .bfb of his CentOS (with updated kernel) and OFED install to try so that there would be no configuration stuff for me to mess up.

Using this, I saw exactly the same crashes I had seen in my setup.
After some thought, I realized the only meaningful difference was that my traffic generator and IP configuration relied on an MTU size of 9000.
Once I set the MTU size down to 1500, the crashes stopped.

So, the answer is clearly that I'm just not setting up for the larger MTU size.  I need to start to understand how to get DPDK to manage that, but the crashing is at least understood now, and I have a way forward.

Thanks very much to Kiran.

Regards,
--Jim

-----Original Message-----
From: Jim Vaigl [mailto:jimv@rockbridgesoftware.com]
Sent: Thursday, September 26, 2019 3:47 PM
To: 'Asaf Penso'; 'Stephen Hemminger'
Cc: 'users@dpdk.org'; 'Kiran Vedere'; 'Erez Ferber'; 'Olga Shern'
Subject: RE: [dpdk-users] DPDK on Mellanox BlueField Ref Platform

> From: Asaf Penso [mailto:asafp@mellanox.com]
> Sent: Thursday, September 26, 2019 7:00 AM
> To: Jim Vaigl; 'Stephen Hemminger'
> Cc: users@dpdk.org; Kiran Vedere; Erez Ferber; Olga Shern
> Subject: RE: [dpdk-users] DPDK on Mellanox BlueField Ref Platform
>
> Hello Jim,
>
> Thanks for your mail.
> In order  for us to have a better resolution please send a mail to our
support team > - support@mellanox.com
> Please provide as much info about the setup, configuration etc as you can.
>
> In parallel, I added Erez Ferber here to assist.
>
> Regards,
> Asaf Penso

Thanks for the kind offer, Asaf.  I'll take this debug effort off-line with you and Erez and post back to the list here later with any resolution so everyone can see the result.

By the way, the prior suggestion of using v. 25 of rdma-core didn't pan out:  the current build script just makes a local build in a subdirectory off the source tree and there's no obvious way to integrate it with the MLNX_OFED environment and the dpdk install.  After resolving package dependencies to get rdma-core to build from the GitHub repo, I realized the instructions say this:

  ---
  Building
  This project uses a cmake based build system. Quick start:

  $ bash build.sh
  build/bin will contain the sample programs and build/lib
  will contain the shared libraries. The build is configured
  to run all the programs 'in-place' and cannot be installed.

  NOTE: It is not currently easy to run from the build
  directory, the plugins only load from the system path.
  ---

--Jim

>> -----Original Message-----
>> From: users <users-bounces@dpdk.org> On Behalf Of Jim Vaigl
>> Sent: Tuesday, September 24, 2019 10:11 PM
>> To: 'Stephen Hemminger' <stephen@networkplumber.org>
>> Cc: users@dpdk.org
>> Subject: Re: [dpdk-users] DPDK on Mellanox BlueField Ref Platform
>> 
>> On Tue, 24 Sep 2019 12:31:51 -0400
>> "Jim Vaigl" <jimv@rockbridgesoftware.com> wrote:
>> 
>>>> Since no one has chimed in with any build/install/configure 
>>>> suggestion
>> for
>> >> the
>> >> BlueField, I've spent some time debugging and thought I'd share 
>> >> the
>> results.
>> >> Building the l3fwd example application and running it as the docs
>> suggest,
>> >> when
>> >> I try to send it UDP packets from another machine, it dumps core.
>> >>
>> >> Debugging a bit with gdb and printf, I can see that from inside
>> >> process_packet()
>> >> and processx4_step1() the calls to rte_pktmbuf_mtod() return Nil 
>> >> or suspicious pointer values (i.e. 0x80).  The sample apps don't 
>> >> guard against NULL pointers being returned from this rte call, so 
>> >> that's why it's dumping core.
>> >>
>> >> I still think the problem is related to the driver config, but 
>> >> thought
>> this
>> >> might ring a bell for anyone who's had problems like this.
>> >>
>> >> The thing that still bothers me is that rather than seeing what I 
>> >> was expecting at init based on what the documentation shows:
>> >>     [...]
>> >>     EAL: probe driver: 15b3:1013 librte_pmd_mlx5
>> >>
>> >> ... when rte_eal_init() runs, I'm seeing:
>> >>     [...]
>> >>     EAL:  Selected IOVA mode 'PA'
>> >>     EAL:  Probing VFIO support...
>> >>
>> >> This still seems wrong, and I've verified that specifying the
BlueField
>> >> target ID
>> >> string in the make is causing "CONFIG_RTE_LIBRTE_MLX5_PMD=y" to
>> appear in
>> >> the .config.
>> >>
>> >> Regards,
>> >> --Jim Vaigl
>> >> 614 886 5999
>> >>
>> >>
>> >
>> >From: Stephen Hemminger [mailto:stephen@networkplumber.org]
>> >Sent: Tuesday, September 24, 2019 1:18 PM
>> >To: Jim Vaigl
>> >Cc: users@dpdk.org
>> >
>> >Subject: Re: [dpdk-users] DPDK on Mellanox BlueField Ref Platform 
>> >make sure you have latest version of rdma-core installed (v25).
>> >The right version is not in most distros
>> 
>> Great suggestion.  I'm using the rdma-core from the MLNX_OFED 
>> 4.6-3.5.8.0 install.  I can't figure out how to tell what version 
>> that thing
includes,
>> even looking at the source, since there's no version information in 
>> the source files, BUT I went to github and downloaded rdma-core v24 
>> and v25 and neither diff cleanly with the source RPM that comes in 
>> the OFED install.  I don't know yet if it's because this is some 
>> different version or if it's because Mellanox has made their own tweaks.
>> 
>> I would hope that the very latest OFED from Mellanox would include an 
>> up-to-date and working set of libs/modules, but maybe you're on to 
>> something.  It sounds like a risky move, but maybe I'll try just 
>> installing rdma-core from github over top of the OFED install.  I 
>> have a fear that I'll end up with inconsistent versions, but it's worth a try.
>> 
>> Thanks,
>> --Jim
 


  reply	other threads:[~2019-10-07 21:11 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-24 16:31 Jim Vaigl
2019-09-24 17:18 ` Stephen Hemminger
2019-09-24 19:10   ` Jim Vaigl
2019-09-26 10:59     ` Asaf Penso
2019-09-26 19:46       ` Jim Vaigl
2019-10-04 17:35       ` Jim Vaigl
2019-10-04 18:28         ` Kiran Vedere [this message]
2019-10-07 16:52           ` Jim Vaigl
2019-10-07 17:00             ` Kiran Vedere
2019-10-07 17:02               ` Kiran Vedere
2019-10-07 18:10               ` Jim Vaigl
  -- strict thread matches above, loose matches on Subject: below --
2019-09-20 19:34 Jim Vaigl

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=AM6PR05MB59105B9A40D7861A98CD7B73AC9E0@AM6PR05MB5910.eurprd05.prod.outlook.com \
    --to=kiranv@mellanox.com \
    --cc=asafp@mellanox.com \
    --cc=dan@mellanoxfederal.com \
    --cc=erezf@mellanox.com \
    --cc=jimv@rockbridgesoftware.com \
    --cc=olgas@mellanox.com \
    --cc=stephen@networkplumber.org \
    --cc=users@dpdk.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).