From: Dirk-Holger Lenz <dirk.lenz@ng4t.com>
To: "De Lara Guarch, Pablo" <pablo.de.lara.guarch@intel.com>,
"users@dpdk.org" <users@dpdk.org>
Subject: Re: [dpdk-users] crypto device 'crypto_aesni_mb' doesn't work in secondary process
Date: Fri, 4 Aug 2017 12:11:37 +0200 [thread overview]
Message-ID: <8c812689-3e9b-46d7-2249-dcca2d0cb7bf@ng4t.com> (raw)
In-Reply-To: <40148ebd-cd42-54f1-d27c-c3d78328e07f@ng4t.com>
Hello Pablo,
perhaps it was a bit misleading what I told, primary
and secondary processes start with the same arguments
to rte_eal_init() but the secondary processes additionally
have the secondary flag (and different settings for the cores).
Best regards
Dirk
On 08/04/2017 11:56 AM, Dirk-Holger Lenz wrote:
> Hello Pablo,
>
> thanks for the quick answer.
>
> I think that in general resources like pools and devices
>
> need to be created by the primary process. That's
>
> the reason that we implemented a process (our dpdk
>
> process) which creates the resources on request by
>
> applications which start and stop dynamically and which
>
> are working as secondary processes. These applications
>
> even don't know which type of Ethernet device or crypto
>
> device they get, they simply ask for one of them.
>
> For the Ethernet devices and QAT and even for the openssl
>
> this works fine (QAT and i40evf worked in the past, we are
>
> investigating why they are not doing for us with 17.08rc4).
>
> I hope that it is possible to make that working for
>
> aesni_mb as well.
>
> Best regards
>
> Dirk
>
>
> On 08/04/2017 11:37 AM, De Lara Guarch, Pablo wrote:
>> Hi Dirk,
>>
>>> -----Original Message-----
>>> From: users [mailto:users-bounces@dpdk.org] On Behalf Of Dirk-Holger
>>> Lenz
>>> Sent: Friday, August 4, 2017 9:14 AM
>>> To: users@dpdk.org
>>> Subject: [dpdk-users] crypto device 'crypto_aesni_mb' doesn't work in
>>> secondary process
>>>
>>> when the crypto device of type 'crypto_aesni_mb' is
>>>
>>> created in the primary process a secondary process
>>>
>>> crashes when writing into the encryption queue.
>>>
>>> The dequeue function rte_cryptodev_dequeue_burst()
>>>
>>> crashes in flush_mb_mgr() when it tries to access the
>>>
>>> structure of function pointers qp->op_fns.
>>>
>>> The reason is that this structure is allocated by the
>>>
>>> primary process in its memory which is not accessible
>>>
>>> in the secondary process (of course also the function
>>>
>>> pointers are pointing to code of the primary process).
>>>
>> Virtual devices have to be initialized in both processes,
>> as they cannot be shared between them.
>>
>> Thanks,
>> Pablo
>
prev parent reply other threads:[~2017-08-04 10:11 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-04 8:14 Dirk-Holger Lenz
2017-08-04 9:37 ` De Lara Guarch, Pablo
2017-08-04 9:56 ` Dirk-Holger Lenz
2017-08-04 10:11 ` Dirk-Holger Lenz [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=8c812689-3e9b-46d7-2249-dcca2d0cb7bf@ng4t.com \
--to=dirk.lenz@ng4t.com \
--cc=pablo.de.lara.guarch@intel.com \
--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).