All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tianfei zhang <tianfei.zhang@intel.com>
To: dev@dpdk.org , rosen.xu@intel.com, qi.z.zhang@intel.com
Cc: Tianfei zhang <tianfei.zhang@intel.com>
Subject: [dpdk-dev] [PATCH v3 0/5] raw/ifpga/base: An improvement for multi-process
Date: Fri, 23 Oct 2020 05:06:28 -0400	[thread overview]
Message-ID: <1603443988-7797-1-git-send-email-tianfei.zhang@intel.com> (raw)
In-Reply-To: <1600846213-18093-1-git-send-email-tianfei.zhang@intel.com>

This patches set will improve the ifpga base driver reliability in
multi-process environment.

Main changes from v2:
- Fix typo in some commit log.

Main changes from v3:
- Split into 2 small patches, one is fix the pointer variable, other is
fix the return value.
- Free the driver's resource in rawdev close ops. 

Patch #1: Fix a bug for register and unregister interrupt
functions.
Patch #2: Fix the return value of unsupported interrupt type.
Patch #3: Fix the return value of ifpga_unregister_msix_irq(), because 
rte_intr_callback_unregister() can return positive as success.
Patch #4: Clean up the ifpga resource when close the application.
Patch #5: An improvement of the concurrent in multi-process operation.
A share memory mechanism and some new mutex will be used for multi-process
protection.


Wei Huang (5):
  raw/ifpga/base: fix interrupt handler instance usage
  raw/ifpga/base: handle unsupported interrupt type
  raw/ifpga/base: fix return of IRQ unregister properly
  raw/ifpga/base: free resources when destroying ifpga device
  raw/ifpga/base: enhance driver reliablity in multi-process

 drivers/raw/ifpga/base/ifpga_api.c            |  12 +
 drivers/raw/ifpga/base/ifpga_enumerate.c      |  16 ++
 drivers/raw/ifpga/base/ifpga_enumerate.h      |   1 +
 drivers/raw/ifpga/base/ifpga_fme.c            |  52 +++-
 drivers/raw/ifpga/base/meson.build            |  12 +
 drivers/raw/ifpga/base/opae_hw_api.c          | 250 ++++++++++++++++++
 drivers/raw/ifpga/base/opae_hw_api.h          |  27 +-
 drivers/raw/ifpga/base/opae_i2c.c             |   9 +-
 drivers/raw/ifpga/base/opae_i2c.h             |   1 +
 drivers/raw/ifpga/base/opae_intel_max10.c     | 152 ++++++-----
 drivers/raw/ifpga/base/opae_spi.c             |   4 +
 drivers/raw/ifpga/base/opae_spi.h             |   5 +
 drivers/raw/ifpga/base/opae_spi_transaction.c |  15 +-
 drivers/raw/ifpga/ifpga_rawdev.c              |  60 +++--
 14 files changed, 523 insertions(+), 93 deletions(-)

-- 
2.17.1


      parent reply	other threads:[~2020-10-23 10:06 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-23  7:30 [dpdk-dev] [PATCH v4 0/4] raw/ifpga/base: An inprovement for multi-process Tianfei zhang
2020-09-23  7:30 ` [dpdk-dev] [PATCH v4 1/4] raw/ifpga/base: fix bug in IRQ functions Tianfei zhang
2020-09-23  7:30 ` [dpdk-dev] [PATCH v4 2/4] raw/ifpga/base: free resources when destroying ifpga device Tianfei zhang
2020-09-23  7:30 ` [dpdk-dev] [PATCH v4 3/4] raw/ifpga/base: cleanup ifpga raw devices when process quit Tianfei zhang
2020-09-23  7:30 ` [dpdk-dev] [PATCH v4 4/4] raw/ifpga/base: enhance driver reliablity in multi-process Tianfei zhang
2020-09-28  1:40 ` [dpdk-dev] [PATCH v2 0/4] raw/ifpga/base: An improvement for multi-process Tianfei zhang
2020-09-28  1:40   ` [dpdk-dev] [PATCH v2 1/4] raw/ifpga/base: fix bug in IRQ functions Tianfei zhang
2020-09-29  1:42     ` Xu, Rosen
2020-10-14  9:59       ` Zhang, Tianfei
2020-10-15 13:14       ` Zhang, Qi Z
2020-10-15 18:56     ` Ferruh Yigit
2020-10-16  5:46       ` Zhang, Tianfei
2020-09-28  1:40   ` [dpdk-dev] [PATCH v2 2/4] raw/ifpga/base: free resources when destroying ifpga device Tianfei zhang
2020-09-29  1:42     ` Xu, Rosen
2020-10-15 13:15       ` Zhang, Qi Z
2020-10-15 18:57     ` Ferruh Yigit
2020-10-16  5:51       ` Zhang, Tianfei
2020-09-28  1:40   ` [dpdk-dev] [PATCH v2 3/4] raw/ifpga/base: cleanup ifpga raw devices when process quit Tianfei zhang
2020-09-29  1:43     ` Xu, Rosen
2020-10-15 13:15       ` Zhang, Qi Z
2020-10-15 18:57     ` Ferruh Yigit
2020-10-16  5:54       ` Zhang, Tianfei
2020-09-28  1:40   ` [dpdk-dev] [PATCH v2 4/4] raw/ifpga/base: enhance driver reliability in multi-process Tianfei zhang
2020-10-15  6:08     ` Xu, Rosen
2020-10-15 13:16       ` Zhang, Qi Z
2020-10-23  8:59 ` [dpdk-dev] [PATCH v3 0/5] raw/ifpga/base: An improvement for multi-process Tianfei zhang
2020-10-23  8:59   ` [dpdk-dev] [PATCH v3 1/5] raw/ifpga/base: fix interrupt handler instance usage Tianfei zhang
2020-10-23  8:59   ` [dpdk-dev] [PATCH v3 2/5] raw/ifpga/base: handle unsupported interrupt type Tianfei zhang
2020-10-23  8:59   ` [dpdk-dev] [PATCH v3 3/5] raw/ifpga/base: fix return of IRQ unregister properly Tianfei zhang
2020-10-23  8:59   ` [dpdk-dev] [PATCH v3 4/5] raw/ifpga/base: free resources when destroying ifpga device Tianfei zhang
2020-10-23  8:59   ` [dpdk-dev] [PATCH v3 5/5] raw/ifpga/base: enhance driver reliablity in multi-process Tianfei zhang
2020-10-26  1:04   ` [dpdk-dev] [PATCH v3 0/5] raw/ifpga/base: An improvement for multi-process Zhang, Qi Z
2020-10-23  9:06 ` Tianfei zhang [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=1603443988-7797-1-git-send-email-tianfei.zhang@intel.com \
    --to=tianfei.zhang@intel.com \
    --cc=dev@dpdk.org \
    --cc=qi.z.zhang@intel.com \
    --cc=rosen.xu@intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.