xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Jan Beulich <jbeulich@suse.com>
To: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: [PATCH 04/12] swiotlb-xen: ensure to issue well-formed XENMEM_exchange requests
Date: Tue, 7 Sep 2021 14:05:32 +0200	[thread overview]
Message-ID: <397bf325-f81e-e104-6142-e8c9c4955475@suse.com> (raw)
In-Reply-To: <588b3e6d-2682-160c-468e-44ca4867a570@suse.com>

While the hypervisor hasn't been enforcing this, we would still better
avoid issuing requests with GFNs not aligned to the requested order.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
I wonder how useful it is to include the alignment in the panic()
message. I further wonder how useful it is to wrap "bytes" in
PAGE_ALIGN(), when it is a multiple of a segment's size anyway (or at
least was supposed to be, prior to "swiotlb-xen: maintain slab count
properly").

--- a/drivers/xen/swiotlb-xen.c
+++ b/drivers/xen/swiotlb-xen.c
@@ -231,10 +231,10 @@ retry:
 	/*
 	 * Get IO TLB memory from any location.
 	 */
-	start = memblock_alloc(PAGE_ALIGN(bytes), PAGE_SIZE);
+	start = memblock_alloc(PAGE_ALIGN(bytes), IO_TLB_SEGSIZE << IO_TLB_SHIFT);
 	if (!start)
-		panic("%s: Failed to allocate %lu bytes align=0x%lx\n",
-		      __func__, PAGE_ALIGN(bytes), PAGE_SIZE);
+		panic("%s: Failed to allocate %lu bytes align=%#x\n",
+		      __func__, PAGE_ALIGN(bytes), IO_TLB_SEGSIZE << IO_TLB_SHIFT);
 
 	/*
 	 * And replace that memory with pages under 4GB.



  parent reply	other threads:[~2021-09-07 12:05 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-07 12:03 [PATCH 00/12] swiotlb-xen: fixes and adjustments Jan Beulich
2021-09-07 12:04 ` [PATCH 01/12] swiotlb-xen: avoid double free Jan Beulich
2021-09-08  6:48   ` Christoph Hellwig
2021-09-10 22:55   ` Stefano Stabellini
2021-09-07 12:04 ` [PATCH 02/12] swiotlb-xen: fix late init retry Jan Beulich
2021-09-08  6:50   ` Christoph Hellwig
2021-09-07 12:05 ` [PATCH 03/12] swiotlb-xen: maintain slab count properly Jan Beulich
2021-09-08  6:53   ` Christoph Hellwig
2021-09-10 23:10   ` Stefano Stabellini
2021-09-07 12:05 ` Jan Beulich [this message]
2021-09-08  6:57   ` [PATCH 04/12] swiotlb-xen: ensure to issue well-formed XENMEM_exchange requests Christoph Hellwig
2021-09-08  9:16     ` Jan Beulich
2021-09-10 23:14   ` Stefano Stabellini
2021-09-13  7:17     ` Jan Beulich
2021-09-13 20:31       ` Stefano Stabellini
2021-09-14  9:11         ` Jan Beulich
2021-09-15  1:22           ` Stefano Stabellini
2021-09-15  1:54             ` Stefano Stabellini
2021-09-15  8:21               ` Jan Beulich
2021-09-07 12:05 ` [PATCH 05/12] swiotlb-xen: suppress certain init retries Jan Beulich
2021-09-08  6:58   ` Christoph Hellwig
2021-09-10 23:18   ` Stefano Stabellini
2021-09-07 12:06 ` [PATCH 06/12] swiotlb-xen: limit " Jan Beulich
2021-09-08  7:00   ` Christoph Hellwig
2021-09-10 23:23   ` Stefano Stabellini
2021-09-07 12:06 ` [PATCH 07/12] swiotlb-xen: drop leftover __ref Jan Beulich
2021-09-08  7:02   ` Christoph Hellwig
2021-09-10 23:24   ` Stefano Stabellini
2021-09-07 12:07 ` [PATCH 08/12] swiotlb-xen: arrange to have buffer info logged Jan Beulich
2021-09-08  7:04   ` Christoph Hellwig
2021-09-10 23:26   ` Stefano Stabellini
2021-09-07 12:07 ` [PATCH 09/12] swiotlb-xen: drop DEFAULT_NSLABS Jan Beulich
2021-09-08  7:06   ` Christoph Hellwig
2021-09-10 23:27   ` Stefano Stabellini
2021-09-07 12:10 ` [PATCH 10/12] xen-pcifront: this module is PV-only Jan Beulich
2021-09-07 15:30   ` Bjorn Helgaas
2021-09-07 16:14     ` Jan Beulich
2021-09-07 16:38       ` Bjorn Helgaas
2021-09-10 23:34   ` Stefano Stabellini
2021-09-07 12:11 ` [PATCH 11/12] xen/pci-swiotlb: reduce visibility of symbols Jan Beulich
2021-09-08  7:08   ` Christoph Hellwig
2021-09-07 12:13 ` [PATCH 12/12] swiotlb-xen: this is PV-only on x86 Jan Beulich
2021-09-08  7:14   ` Christoph Hellwig
2021-09-10 23:48     ` Stefano Stabellini
2021-09-13  7:28       ` Jan Beulich
2021-09-13 20:54         ` Stefano Stabellini
2021-09-13  7:51       ` Jan Beulich
2021-09-13 20:49         ` Stefano Stabellini
2021-09-08 15:18 ` [PATCH 00/12] swiotlb-xen: fixes and adjustments Juergen Gross
2021-09-14  8:30 ` Juergen Gross

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=397bf325-f81e-e104-6142-e8c9c4955475@suse.com \
    --to=jbeulich@suse.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=jgross@suse.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sstabellini@kernel.org \
    --cc=xen-devel@lists.xenproject.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).