Skip to content

Commit 2356f15

Browse files
freddy77jgross1
authored andcommitted
xen: Add support for XenServer 6.1 platform device
On XenServer on Windows machine a platform device with ID 2 instead of 1 is used. This device is mainly identical to device 1 but due to some Windows update behaviour it was decided to use a device with a different ID. This causes compatibility issues with Linux which expects, if Xen is detected, to find a Xen platform device (5853:0001) otherwise code will crash due to some missing initialization (specifically grant tables). Specifically from dmesg RIP: 0010:gnttab_expand+0x29/0x210 Code: 90 0f 1f 44 00 00 55 31 d2 48 89 e5 41 57 41 56 41 55 41 89 fd 41 54 53 48 83 ec 10 48 8b 05 7e 9a 49 02 44 8b 35 a7 9a 49 02 <8b> 48 04 8d 44 39 ff f7 f1 45 8d 24 06 89 c3 e8 43 fe ff ff 44 39 RSP: 0000:ffffba34c01fbc88 EFLAGS: 00010086 ... The device 2 is presented by Xapi adding device specification to Qemu command line. Signed-off-by: Frediano Ziglio <frediano.ziglio@cloud.com> Acked-by: Juergen Gross <jgross@suse.com> Message-ID: <20250227145016.25350-1-frediano.ziglio@cloud.com> Signed-off-by: Juergen Gross <jgross@suse.com>
1 parent 80e54e8 commit 2356f15

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

drivers/xen/platform-pci.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626

2727
#define DRV_NAME "xen-platform-pci"
2828

29+
#define PCI_DEVICE_ID_XEN_PLATFORM_XS61 0x0002
30+
2931
static unsigned long platform_mmio;
3032
static unsigned long platform_mmio_alloc;
3133
static unsigned long platform_mmiolen;
@@ -174,6 +176,8 @@ static int platform_pci_probe(struct pci_dev *pdev,
174176
static const struct pci_device_id platform_pci_tbl[] = {
175177
{PCI_VENDOR_ID_XEN, PCI_DEVICE_ID_XEN_PLATFORM,
176178
PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
179+
{PCI_VENDOR_ID_XEN, PCI_DEVICE_ID_XEN_PLATFORM_XS61,
180+
PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
177181
{0,}
178182
};
179183

0 commit comments

Comments
 (0)