From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: David Woodhouse <dwmw@amazon.co.uk>,
Boris Ostrovsky <boris.ostrovsky@oracle.com>,
Juergen Gross <jgross@suse.com>, Sasha Levin <sashal@kernel.org>,
linux-doc@vger.kernel.org, xen-devel@lists.xenproject.org
Subject: [PATCH AUTOSEL 5.4 15/26] x86/xen: Add xen_no_vector_callback option to test PCI INTX delivery
Date: Tue, 19 Jan 2021 20:26:52 -0500 [thread overview]
Message-ID: <20210120012704.770095-15-sashal@kernel.org> (raw)
In-Reply-To: <20210120012704.770095-1-sashal@kernel.org>
From: David Woodhouse <dwmw@amazon.co.uk>
[ Upstream commit b36b0fe96af13460278bf9b173beced1bd15f85d ]
It's useful to be able to test non-vector event channel delivery, to make
sure Linux will work properly on older Xen which doesn't have it.
It's also useful for those working on Xen and Xen-compatible hypervisors,
because there are guest kernels still in active use which use PCI INTX
even when vector delivery is available.
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Link: https://lore.kernel.org/r/20210106153958.584169-4-dwmw2@infradead.org
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
Documentation/admin-guide/kernel-parameters.txt | 4 ++++
arch/x86/xen/enlighten_hvm.c | 11 ++++++++++-
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 74ba077e99e56..a19ae163c0589 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -5452,6 +5452,10 @@
This option is obsoleted by the "nopv" option, which
has equivalent effect for XEN platform.
+ xen_no_vector_callback
+ [KNL,X86,XEN] Disable the vector callback for Xen
+ event channel interrupts.
+
xen_scrub_pages= [XEN]
Boolean option to control scrubbing pages before giving them back
to Xen, for use by other domains. Can be also changed at runtime
diff --git a/arch/x86/xen/enlighten_hvm.c b/arch/x86/xen/enlighten_hvm.c
index e138f7de52d20..6024fafed1642 100644
--- a/arch/x86/xen/enlighten_hvm.c
+++ b/arch/x86/xen/enlighten_hvm.c
@@ -175,6 +175,8 @@ static int xen_cpu_dead_hvm(unsigned int cpu)
return 0;
}
+static bool no_vector_callback __initdata;
+
static void __init xen_hvm_guest_init(void)
{
if (xen_pv_domain())
@@ -194,7 +196,7 @@ static void __init xen_hvm_guest_init(void)
xen_panic_handler_init();
- if (xen_feature(XENFEAT_hvm_callback_vector))
+ if (!no_vector_callback && xen_feature(XENFEAT_hvm_callback_vector))
xen_have_vector_callback = 1;
xen_hvm_smp_init();
@@ -220,6 +222,13 @@ static __init int xen_parse_nopv(char *arg)
}
early_param("xen_nopv", xen_parse_nopv);
+static __init int xen_parse_no_vector_callback(char *arg)
+{
+ no_vector_callback = true;
+ return 0;
+}
+early_param("xen_no_vector_callback", xen_parse_no_vector_callback);
+
bool __init xen_hvm_need_lapic(void)
{
if (xen_pv_domain())
--
2.27.0
next prev parent reply other threads:[~2021-01-20 2:52 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-20 1:26 [PATCH AUTOSEL 5.4 01/26] ASoC: Intel: haswell: Add missing pm_ops Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 02/26] HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 03/26] dm integrity: select CRYPTO_SKCIPHER Sasha Levin
2021-01-20 5:47 ` [dm-devel] " Eric Biggers
2021-02-05 0:28 ` Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 04/26] scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 05/26] scsi: qedi: Correct max length of CHAP secret Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 06/26] scsi: sd: Suppress spurious errors when WRITE SAME is being disabled Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 07/26] riscv: Fix kernel time_init() Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 08/26] riscv: Fix sifive serial driver Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 09/26] HID: logitech-dj: add the G602 receiver Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 10/26] HID: Ignore battery for Elan touchscreen on ASUS UX550 Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 11/26] clk: tegra30: Add hda clock default rates to clock driver Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 12/26] r8152: Add Lenovo Powered USB-C Travel Hub Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 13/26] arm64: make atomic helpers __always_inline Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 14/26] xen: Fix event channel callback via INTX/GSI Sasha Levin
2021-01-20 1:26 ` Sasha Levin [this message]
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 16/26] net: stmmac: Fixed mtu channged by cache aligned Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 17/26] dts: phy: fix missing mdio device and probe failure of vsc8541-01 device Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 18/26] dts: phy: add GPIO number and active state used for phy reset Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 19/26] riscv: defconfig: enable gpio support for HiFive Unleashed Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 20/26] drm/amdgpu/psp: fix psp gfx ctrl cmds Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 21/26] drm/amd/display: Fix to be able to stop crc calculation Sasha Levin
2021-01-20 1:26 ` [PATCH AUTOSEL 5.4 22/26] drm/nouveau/bios: fix issue shadowing expansion ROMs Sasha Levin
2021-01-20 1:27 ` [PATCH AUTOSEL 5.4 23/26] drm/nouveau/privring: ack interrupts the same way as RM Sasha Levin
2021-01-20 1:27 ` [PATCH AUTOSEL 5.4 24/26] drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields Sasha Levin
2021-01-20 1:27 ` [PATCH AUTOSEL 5.4 25/26] drm/nouveau/mmu: fix vram heap sizing Sasha Levin
2021-01-20 1:27 ` [PATCH AUTOSEL 5.4 26/26] drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 Sasha Levin
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=20210120012704.770095-15-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=boris.ostrovsky@oracle.com \
--cc=dwmw@amazon.co.uk \
--cc=jgross@suse.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=stable@vger.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