DPDK usage discussions
 help / color / mirror / Atom feed
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 11:56:08 +0200	[thread overview]
Message-ID: <40148ebd-cd42-54f1-d27c-c3d78328e07f@ng4t.com> (raw)
In-Reply-To: <E115CCD9D858EF4F90C690B0DCB4D8976CBE8BFF@IRSMSX108.ger.corp.intel.com>

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

  reply	other threads:[~2017-08-04  9:56 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 [this message]
2017-08-04 10:11     ` Dirk-Holger Lenz

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=40148ebd-cd42-54f1-d27c-c3d78328e07f@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).