From: Eric Auger <eric.auger@redhat.com>
To: Kunkun Jiang <jiangkunkun@huawei.com>,
Alex Williamson <alex.williamson@redhat.com>,
Kirti Wankhede <kwankhede@nvidia.com>,
"open list:All patches CC here" <qemu-devel@nongnu.org>
Cc: wanghaibin.wang@huawei.com, tangnianyao@huawei.com, ganqixin@huawei.com
Subject: Re: [PATCH v2 2/2] vfio/common: Add trace point when a MMIO RAM section less than PAGE_SIZE
Date: Thu, 21 Oct 2021 19:02:01 +0200 [thread overview]
Message-ID: <4ff1afe8-2bff-985f-85cc-9ec68ed77a1b@redhat.com> (raw)
In-Reply-To: <20210914015326.1494-3-jiangkunkun@huawei.com>
Hi Kunkun,
On 9/14/21 3:53 AM, Kunkun Jiang wrote:
> The MSI-X structures of some devices and other non-MSI-X structures
> are in the same BAR. They may share one host page, especially in the
may be in the same bar?
> case of large page granularity, such as 64K.
>
> For example, MSIX-Table size of 82599 NIC is 0x30 and the offset in
> Bar 3(size 64KB) is 0x0. If host page size is 64KB.
remove the '.'
In that case wouldn't the symptom be the same with a 4kB page?
> vfio_listener_region_add() will be called to map the remaining range
> (0x30-0xffff). And it will return early at
> 'int128_ge((int128_make64(iova), llend))' and hasn't any message.
s/and hasn't any message /without any message
> Let's add a trace point to informed users like commit 5c08600547c0
s/informed/inform
> ("vfio: Use a trace point when a RAM section cannot be DMA mapped")
> did.
>
> Signed-off-by: Kunkun Jiang <jiangkunkun@huawei.com>
> ---
> hw/vfio/common.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/hw/vfio/common.c b/hw/vfio/common.c
> index 8728d4d5c2..2fc6213c0f 100644
> --- a/hw/vfio/common.c
> +++ b/hw/vfio/common.c
> @@ -892,6 +892,13 @@ static void vfio_listener_region_add(MemoryListener *listener,
> llend = int128_and(llend, int128_exts64(qemu_real_host_page_mask));
>
> if (int128_ge(int128_make64(iova), llend)) {
> + if (memory_region_is_ram_device(section->mr)) {
> + trace_vfio_listener_region_add_no_dma_map(
> + memory_region_name(section->mr),
> + section->offset_within_address_space,
> + int128_getlo(section->size),
> + qemu_real_host_page_size);
> + }
> return;
> }
> end = int128_get64(int128_sub(llend, int128_one()));
Thanks
Eric
next prev parent reply other threads:[~2021-10-21 17:04 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-14 1:53 [PATCH v2 0/2] vfio: Some fixes about vfio-pci MMIO RAM mapping Kunkun Jiang
2021-09-14 1:53 ` [PATCH v2 1/2] vfio/pci: Fix vfio-pci sub-page MMIO BAR mmaping in live migration Kunkun Jiang
2021-10-21 16:15 ` Eric Auger
2021-10-22 10:01 ` Kunkun Jiang
2021-10-23 14:26 ` Eric Auger
2021-10-24 2:09 ` Kunkun Jiang
2021-09-14 1:53 ` [PATCH v2 2/2] vfio/common: Add trace point when a MMIO RAM section less than PAGE_SIZE Kunkun Jiang
2021-10-21 17:02 ` Eric Auger [this message]
2021-10-22 10:02 ` Kunkun Jiang
2021-10-08 1:27 ` [PATCH v2 0/2] vfio: Some fixes about vfio-pci MMIO RAM mapping Kunkun Jiang
2021-10-08 15:05 ` Alex Williamson
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=4ff1afe8-2bff-985f-85cc-9ec68ed77a1b@redhat.com \
--to=eric.auger@redhat.com \
--cc=alex.williamson@redhat.com \
--cc=ganqixin@huawei.com \
--cc=jiangkunkun@huawei.com \
--cc=kwankhede@nvidia.com \
--cc=qemu-devel@nongnu.org \
--cc=tangnianyao@huawei.com \
--cc=wanghaibin.wang@huawei.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).