Hi,

I have just pushed a patch that makes dpdk-example build (I have tested it
on Fedora 33 with gcc 10). The simple "./scripts/run.py -n" seems to work.

./scripts/run.py -n

OSv v0.55.0-295-g371ff15c

Booted up in 168.79 ms

Cmdline: /test -c f -n 1 --no-shconf

EAL: Detected lcore 0 as core 0 on socket 0

EAL: Detected lcore 1 as core 1 on socket 0

EAL: Detected lcore 2 as core 2 on socket 0

EAL: Detected lcore 3 as core 3 on socket 0

EAL: Support maximum 128 logical core(s) by configuration.

EAL: Detected 4 lcore(s)

EAL:    bar0 not available

EAL:    bar0 not available

EAL:    bar0 not available

EAL:    bar0 not available

EAL:    bar0 not available

EAL: PCI scan found 4 devices

EAL: Setting up memory...

EAL: Mapped memory segment 0 @ 0xffff80007da00000: physaddr:0x7da00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80007b800000: physaddr:0x7b800000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800079600000: physaddr:0x79600000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800077400000: physaddr:0x77400000, len
33554432

EAL: TSC frequency is ~77 KHz

EAL: Master lcore 0 is ready (tid=1142360;cpuset=[0])

PMD: ENICPMD trace: rte_enic_pmd_init

EAL: lcore 1 is ready (tid=1142380;cpuset=[1])

EAL: lcore 2 is ready (tid=1142390;cpuset=[2])

EAL: lcore 3 is ready (tid=11423a0;cpuset=[3])

APP: HPET is not enabled, using TSC as default timer

RTE>>

RTE>>

I have also tried to run another example from README.md but it gives me
this error:

./scripts/run.py -n -e '--maxnic=0 /l2fwd --no-shconf -c f -n 2 --log-level
8 -m 768 -- -p 3'

OSv v0.55.0-295-g371ff15c

Booted up in 168.67 ms

Cmdline: /l2fwd --no-shconf -c f -n 2 --log-level 8 -m 768 -- -p 3

EAL: Detected lcore 0 as core 0 on socket 0

EAL: Detected lcore 1 as core 1 on socket 0

EAL: Detected lcore 2 as core 2 on socket 0

EAL: Detected lcore 3 as core 3 on socket 0

EAL: Support maximum 128 logical core(s) by configuration.

EAL: Detected 4 lcore(s)

EAL:    bar0 not available

EAL:    bar0 not available

EAL:    bar0 not available

EAL:    bar0 not available

EAL:    bar0 not available

EAL: PCI scan found 4 devices

EAL: Setting up memory...

EAL: Mapped memory segment 0 @ 0xffff80007da00000: physaddr:0x7da00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80007b800000: physaddr:0x7b800000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800079600000: physaddr:0x79600000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800077400000: physaddr:0x77400000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800075200000: physaddr:0x75200000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800073000000: physaddr:0x73000000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800070e00000: physaddr:0x70e00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80006ec00000: physaddr:0x6ec00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80006ca00000: physaddr:0x6ca00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80006a800000: physaddr:0x6a800000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800068600000: physaddr:0x68600000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800066400000: physaddr:0x66400000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800064200000: physaddr:0x64200000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800062000000: physaddr:0x62000000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80005fe00000: physaddr:0x5fe00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80005dc00000: physaddr:0x5dc00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80005ba00000: physaddr:0x5ba00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800059800000: physaddr:0x59800000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800057600000: physaddr:0x57600000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800055400000: physaddr:0x55400000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800053200000: physaddr:0x53200000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff800051000000: physaddr:0x51000000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80004ee00000: physaddr:0x4ee00000, len
33554432

EAL: Mapped memory segment 0 @ 0xffff80004cc00000: physaddr:0x4cc00000, len
33554432

EAL: TSC frequency is ~77 KHz

EAL: Master lcore 0 is ready (tid=1102360;cpuset=[0])

PMD: ENICPMD trace: rte_enic_pmd_init

EAL: lcore 1 is ready (tid=1102380;cpuset=[1])

EAL: lcore 2 is ready (tid=1102390;cpuset=[2])

EAL: lcore 3 is ready (tid=11023a0;cpuset=[3])

EAL: Error - exiting with code: 1

  Cause: No Ethernet ports - bye

Unfortunately, I am not very familiar with DPDK (apart from what I read on
their website so I have some clue:-)) so I do not know what the meaning of
'No Ethernet ports' really is in the context of this app.

I have added Takuya ASADA to the email thread who originally implemented
this example so he might be able to help us here.

Please note that the patch mostly makes this example build with modern gcc
which mostly involves disabling certain warnings by applying
"modern_gcc.path" to the repo https://github.com/syuu1228/osv-dpdk which as
I understand is the OSv fork of DPDK (1.8?). Ideally, we would want to make
these changes upstream in that repo but I do not have access to it. Or we
could clone it.

Even more, ideally, we could update this fork to the latest dpdk which
probably better handles new gcc. This would require some guidance from
Takuya. From my brief research it seems that most changes were to create
OSv version of EAL (see
https://doc.dpdk.org/guides/prog_guide/env_abstraction_layer.html) which
you call see here -
https://github.com/syuu1228/osv-dpdk/commits/osv-1.8.0-cleanup (the key
commit, I think, is
https://github.com/syuu1228/osv-dpdk/commit/9df906deeeda1d26f5a67c26408067c6246efc12
which mostly adds OSv EAL app - lib/librte_eal/osvapp/*). I think we would
have to also take into account any possible changes to EAL api in new
version.

I hope it helps.

Regards,
Waldek

On Thu, Jul 8, 2021 at 8:32 PM Sergio Inzunza <[email protected]> wrote:

> Hi,
>
> That is great to hear Waldek. I will keep an eye out for the patch. Thank
> you so much.
>
> Thanks,
> Sergio Inzunza
>
> On Wednesday, July 7, 2021 at 9:18:29 PM UTC-7 [email protected] wrote:
>
>> Hi,
>>
>> It looks like the dpdk repo got renamed. Also, there are some changes I
>> need to make it build with new GCC.
>>
>> I am working on a patch to make it build. I hope to have it soon ready.
>>
>> Waldek
>>
>> On Thursday, July 1, 2021 at 2:18:55 PM UTC-4 Sergio Inzunza wrote:
>>
>>> Hello everyone,
>>>
>>> I hope everyone is doing great. I was looking into the dpdk-example app,
>>> but I am not able to build the image. I see it was last updated 6 years ago
>>> and the implementation doesn't work with the latest kernel. I was wondering
>>> if anyone has worked in integrating the latest dpdk with OSv. If not does
>>> anyone have any suggestions in how to use the tool chain to have a dpdk
>>> application integrated. Any help would be greatly appreciated. Thank you
>>> all so much in advance.
>>>
>>> Thanks,
>>> Sergio Inzunza
>>>
>> --
> You received this message because you are subscribed to the Google Groups
> "OSv Development" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/osv-dev/b97079e7-0fd3-4517-a003-66cf10b6a09fn%40googlegroups.com
> <https://groups.google.com/d/msgid/osv-dev/b97079e7-0fd3-4517-a003-66cf10b6a09fn%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/osv-dev/CAL9cFfPY4ix65-u84GGtGtrCaAT9eDE3ycrt5WGmyYhF1AtSZQ%40mail.gmail.com.

Reply via email to