DPDK patches and discussions
 help / color / mirror / Atom feed
From: David Marchand <david.marchand@redhat.com>
To: "Wang, Haiyue" <haiyue.wang@intel.com>,
	"谢华伟(此时此刻)" <huawei.xhw@alibaba-inc.com>
Cc: "maxime.coquelin@redhat.com" <maxime.coquelin@redhat.com>,
	"Yigit, Ferruh" <ferruh.yigit@intel.com>,
	 "dev@dpdk.org" <dev@dpdk.org>,
	"Burakov, Anatoly" <anatoly.burakov@intel.com>,
	 "xuemingl@nvidia.com" <xuemingl@nvidia.com>,
	"grive@u256.net" <grive@u256.net>
Subject: Re: [dpdk-dev] [PATCH v11 2/2] bus/pci: support MMIO in PCI ioport accessors
Date: Mon, 15 Mar 2021 11:19:35 +0100	[thread overview]
Message-ID: <CAJFAV8wp7jM6+j+mn7wzwLH_1gGRuC0NVgzv7t458A1ZteYEDg@mail.gmail.com> (raw)
In-Reply-To: <BN8PR11MB379559171764FF615E06D4FBF7909@BN8PR11MB3795.namprd11.prod.outlook.com>

On Thu, Mar 11, 2021 at 7:43 AM Wang, Haiyue <haiyue.wang@intel.com> wrote:
> Like kernel use macro to do pio and mmio, maybe we can also to do so for
> making code clean:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/lib/iomap.c
>
> #define IO_COND(addr, is_pio, is_mmio) do {                     \
>         unsigned long port = (unsigned long __force)addr;       \
>         if (port >= PIO_RESERVED) {                             \
>                 is_mmio;                                        \
>         } else if (port > PIO_OFFSET) {                         \
>                 port &= PIO_MASK;                               \
>                 is_pio;                                         \
>         } else                                                  \
>                 bad_io_access(port, #is_pio );                  \
> } while (0)
>
>
> Like:
>
> #if defined(RTE_ARCH_X86)
> #define IO_COND(addr, is_pio, is_mmio) do {           \
>         if ((uint64_t)(uintptr_t)addr >= PIO_MAX) {   \
>                 is_mmio;                              \
>         } else {                                      \
>                 is_pio;                               \
>         }                                             \
> } while (0)
> #else
> #define IO_COND(addr, is_pio, is_mmio) do {           \
>                 is_mmio;                              \
> } while (0)
> #endif

We should not just copy/paste kernel code.

Plus here, this seems a bit overkill.
And there are other parts in this code that could use some polishing.

What do you think of merging this series as is (now that we got non
regression reports) and doing such cleanups in followup patches?


-- 
David Marchand


  reply	other threads:[~2021-03-15 10:19 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-29  3:18 [dpdk-dev] [PATCH v6 0/2] support both PIO and MMIO BAR for legacy device in virtio PMD 谢华伟(此时此刻)
2021-01-29  3:18 ` [dpdk-dev] [PATCH v6 1/2] bus/pci: use PCI standard sysfs entry to get PIO address 谢华伟(此时此刻)
2021-02-03  9:37   ` Maxime Coquelin
2021-02-18  9:33   ` David Marchand
2021-02-21 15:58     ` 谢华伟(此时此刻)
2021-02-24 12:49       ` David Marchand
2021-02-24 15:29         ` 谢华伟(此时此刻)
2021-02-24 17:52           ` David Marchand
2021-03-01 15:47             ` 谢华伟(此时此刻)
2021-03-02 12:31             ` 谢华伟(此时此刻)
2021-01-29  3:18 ` [dpdk-dev] [PATCH v6 2/2] bus/pci: support MMIO in PCI ioport accessors 谢华伟(此时此刻)
2021-02-03  9:37   ` Maxime Coquelin
2021-02-09 14:51   ` Ferruh Yigit
2021-02-19  8:52     ` Ferruh Yigit
2021-02-21 15:45       ` 谢华伟(此时此刻)
2021-02-17  9:06   ` David Marchand
2021-02-17 14:15     ` 谢华伟(此时此刻)
2021-02-18  9:33       ` David Marchand
2021-01-29  3:25 ` [dpdk-dev] [PATCH v6 0/2] support both PIO and MMIO BAR for legacy device in virtio PMD 谢华伟(此时此刻)
2021-02-01  7:43   ` 谢华伟(此时此刻)
2021-02-03  9:37     ` Maxime Coquelin
2021-02-04  2:50       ` 谢华伟(此时此刻)
2021-02-22 17:15 ` [dpdk-dev] [PATCH v7 " 谢华伟(此时此刻)
2021-02-22 17:15   ` [dpdk-dev] [PATCH v7 1/2] bus/pci: use PCI standard sysfs entry to get PIO address 谢华伟(此时此刻)
2021-02-22 17:15   ` [dpdk-dev] [PATCH v7 2/2] bus/pci: support MMIO in PCI ioport accessors 谢华伟(此时此刻)
2021-02-22 17:25     ` Ferruh Yigit
2021-02-23 14:20       ` 谢华伟(此时此刻)
2021-02-24 15:45         ` Ferruh Yigit
2021-02-25  3:59           ` 谢华伟(此时此刻)
2021-02-25  9:52             ` David Marchand
2021-03-01 15:43               ` 谢华伟(此时此刻)
2021-03-02 13:14                 ` David Marchand
2021-03-03  7:56                   ` 谢华伟(此时此刻)
2021-03-01 16:01   ` [dpdk-dev] [PATCH v8 0/2] support both PIO and MMIO BAR for legacy device in virtio PMD 谢华伟(此时此刻)
2021-03-01 16:01     ` [dpdk-dev] [PATCH v8 1/2] bus/pci: use PCI standard sysfs entry to get PIO address 谢华伟(此时此刻)
2021-03-01 16:01     ` [dpdk-dev] [PATCH v8 2/2] bus/pci: support MMIO in PCI ioport accessors 谢华伟(此时此刻)
2021-03-02 12:48     ` [dpdk-dev] [PATCH v8 0/2] support both PIO and MMIO BAR for legacy device in virtio PMD 谢华伟(此时此刻)
2021-03-02 13:01       ` Ferruh Yigit
2021-03-02 13:17       ` David Marchand
2021-03-03 17:46     ` [dpdk-dev] [PATCH v9 " 谢华伟(此时此刻)
2021-03-03 17:46       ` [dpdk-dev] [PATCH v9 1/2] bus/pci: use PCI standard sysfs entry to get PIO address 谢华伟(此时此刻)
2021-03-03 17:46       ` [dpdk-dev] [PATCH v9 2/2] bus/pci: support MMIO in PCI ioport accessors 谢华伟(此时此刻)
2021-03-03 18:24       ` [dpdk-dev] [PATCH v9 0/2] support both PIO and MMIO BAR for legacy device in virtio PMD Stephen Hemminger
2021-03-04 13:45         ` 谢华伟(此时此刻)
2021-03-03 18:47       ` [dpdk-dev] [PATCH v10 0/2] support both PIO and MMIO BAR for legacy virito device 谢华伟(此时此刻)
2021-03-03 18:47         ` [dpdk-dev] [PATCH v10 1/2] bus/pci: use PCI standard sysfs entry to get PIO address 谢华伟(此时此刻)
2021-03-05 16:17           ` 谢华伟(此时此刻)
2021-03-09  6:22             ` 谢华伟(此时此刻)
2021-03-09  7:44               ` David Marchand
2021-03-03 18:47         ` [dpdk-dev] [PATCH v10 2/2] bus/pci: support MMIO in PCI ioport accessors 谢华伟(此时此刻)
2021-03-10 17:36         ` [dpdk-dev] [PATCH v11 0/2] support both PIO and MMIO BAR for legacy virito device 谢华伟(此时此刻)
2021-03-10 17:36           ` [dpdk-dev] [PATCH v11 1/2] bus/pci: use PCI standard sysfs entry to get PIO address 谢华伟(此时此刻)
2021-03-10 17:36           ` [dpdk-dev] [PATCH v11 2/2] bus/pci: support MMIO in PCI ioport accessors 谢华伟(此时此刻)
2021-03-11  6:42             ` Wang, Haiyue
2021-03-15 10:19               ` David Marchand [this message]
2021-03-15 11:25                 ` 谢华伟(此时此刻)
2021-03-15 13:11                 ` Wang, Haiyue
2021-03-11 11:54           ` [dpdk-dev] [PATCH v11 0/2] support both PIO and MMIO BAR for legacy virito device Wang, Yinan
2021-03-12 14:32             ` David Marchand
2021-03-15 14:16           ` David Marchand
2021-03-17  8:12             ` 谢华伟(此时此刻)

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=CAJFAV8wp7jM6+j+mn7wzwLH_1gGRuC0NVgzv7t458A1ZteYEDg@mail.gmail.com \
    --to=david.marchand@redhat.com \
    --cc=anatoly.burakov@intel.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=grive@u256.net \
    --cc=haiyue.wang@intel.com \
    --cc=huawei.xhw@alibaba-inc.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=xuemingl@nvidia.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 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).