DPDK patches and discussions
 help / color / mirror / Atom feed
From: Vijayakumar Muthuvel Manickam <mmvijay@gmail.com>
To: "dev@dpdk.org" <dev@dpdk.org>
Subject: [dpdk-dev] Running 32bit secondary with 64bit primary DPDK process
Date: Fri, 5 Dec 2014 23:58:10 -0800	[thread overview]
Message-ID: <CADJ2ZGPJxNXxd3HxTWgJqywfv9xxx+kaXjNxcePy5PiCwE+S9w@mail.gmail.com> (raw)

Hi,

I have a patch that enables 32bit secondary DPDK processes to attach with
64bit primary DPDK process and share the mempool and ring datastructures. I
developed this patch to enable our product(from Brocade) which uses a 32bit
userspace network stack to be able to work with PMDs like ivshmem and some
proprietary PMDs that are available only for 64bit version of the primary
process.

To achieve this,
1) I changed the mmap() of hugepages in primary process to use MAP_32BIT
flag so that all hugepages are mapped within the 4GB virtual address limit
and
2) Added a dummy pad_pointer member variable next to each pointer member
within the shared datastructures like struct rte_ring, struct
rte_mempool, struct rte_pktmbuf, TAILQ_HEAD, struct hugepage_file that both
primary and secondary share.

I have been able to successfully run a 64bit primary process with multiple
32bit secondary processes doing packet processing with the pipeline model.

I would like to know if this compatibility support is of interest to the
community and if so I can submit my patch.

Thanks,
Vijay

             reply	other threads:[~2014-12-06  7:58 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-06  7:58 Vijayakumar Muthuvel Manickam [this message]
2014-12-06 13:48 ` Neil Horman

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=CADJ2ZGPJxNXxd3HxTWgJqywfv9xxx+kaXjNxcePy5PiCwE+S9w@mail.gmail.com \
    --to=mmvijay@gmail.com \
    --cc=dev@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).