search for: hypervisor_physdev_op

Displaying 20 results from an estimated 79 matches for "hypervisor_physdev_op".

2012 Sep 14
3
memory corruption in HYPERVISOR_physdev_op()
Hi Jeremy, My static analyzer complains about potential memory corruption in HYPERVISOR_physdev_op() arch/x86/include/asm/xen/hypercall.h 389 static inline int 390 HYPERVISOR_physdev_op(int cmd, void *arg) 391 { 392 int rc = _hypercall2(int, physdev_op, cmd, arg); 393 if (unlikely(rc == -ENOSYS)) { 394 struct physdev_op op; 395...
2012 Sep 14
3
memory corruption in HYPERVISOR_physdev_op()
Hi Jeremy, My static analyzer complains about potential memory corruption in HYPERVISOR_physdev_op() arch/x86/include/asm/xen/hypercall.h 389 static inline int 390 HYPERVISOR_physdev_op(int cmd, void *arg) 391 { 392 int rc = _hypercall2(int, physdev_op, cmd, arg); 393 if (unlikely(rc == -ENOSYS)) { 394 struct physdev_op op; 395...
2012 Sep 14
3
memory corruption in HYPERVISOR_physdev_op()
Hi Jeremy, My static analyzer complains about potential memory corruption in HYPERVISOR_physdev_op() arch/x86/include/asm/xen/hypercall.h 389 static inline int 390 HYPERVISOR_physdev_op(int cmd, void *arg) 391 { 392 int rc = _hypercall2(int, physdev_op, cmd, arg); 393 if (unlikely(rc == -ENOSYS)) { 394 struct physdev_op op; 395...
2013 Jul 22
11
[PATCH] xen: arm: document which hypercalls (and subops) are supported on ARM
...perations, with the exception of: + * * SCHEDOP_block -- prefer wfi hardware instruction + * + * HYPERVISOR_console_io + * All generic sub-operations + * + * HYPERVISOR_xen_version + * All generic sub-operations + * + * HYPERVISOR_event_channel_op + * All generic sub-operations + * + * HYPERVISOR_physdev_op + * No sub-operations are currenty supported + * + * HYPERVISOR_sysctl + * All generic sub-operations, with the exception of: + * * XEN_SYSCTL_page_offline_op + * * XEN_SYSCTL_get_pmstat + * * XEN_SYSCTL_pm_op + * + * HYPERVISOR_hvm_op + * Exactly these sub-operations are supported...
2013 Jan 30
2
[PATCH] PVH: remove code to map iomem from guest
...xen_set_pte(ptep, pteval); } -void xen_set_clr_mmio_pvh_pte(unsigned long pfn, unsigned long mfn, - int nr_mfns, int add_mapping) -{ - struct physdev_map_iomem iomem; - - iomem.first_gfn = pfn; - iomem.first_mfn = mfn; - iomem.nr_mfns = nr_mfns; - iomem.add_mapping = add_mapping; - - if (HYPERVISOR_physdev_op(PHYSDEVOP_map_iomem, &iomem)) - BUG(); -} - static void xen_set_pte_at(struct mm_struct *mm, unsigned long addr, pte_t *ptep, pte_t pteval) { diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c index 7e93ec9..6532172 100644 --- a/arch/x86/xen/setup.c +++ b/arch/x86/xen/setup.c @@...
2012 Sep 18
4
[PATCH] EHCI/Xen: propagate controller reset information to hypervisor
...ype) { + const struct pci_dev *pdev = to_pci_dev(ctrlr); + + dbgp.u.pci.seg = pci_domain_nr(pdev->bus); + dbgp.u.pci.bus = pdev->bus->number; + dbgp.u.pci.devfn = pdev->devfn; + dbgp.bus = PHYSDEVOP_DBGP_BUS_PCI; + } else +#endif + dbgp.bus = PHYSDEVOP_DBGP_BUS_UNKNOWN; + + return HYPERVISOR_physdev_op(PHYSDEVOP_dbgp_op, &dbgp); +} + +int xen_dbgp_reset_prep(struct usb_hcd *hcd) +{ + return xen_dbgp_op(hcd, PHYSDEVOP_DBGP_RESET_PREPARE); +} + +int xen_dbgp_external_startup(struct usb_hcd *hcd) +{ + return xen_dbgp_op(hcd, PHYSDEVOP_DBGP_RESET_DONE); +} + +#ifndef CONFIG_EARLY_PRINTK_DBGP +#in...
2010 Feb 26
0
[Xen-devel] Crash during boot in Debian lenny default dom0 kernel (2.6.26-2-xen-686) / bugfix patch
...us = dev->bus->number; - map_irq.msi_info.devfn = dev->devfn; - map_irq.msi_info.entry_nr = entry_nr; - map_irq.msi_info.msi = msi; + map_irq.bus = dev->bus->number; + map_irq.devfn = dev->devfn; + map_irq.entry_nr = entry_nr; + map_irq.table_base = table_base; if ((rc = HYPERVISOR_physdev_op(PHYSDEVOP_map_pirq, &map_irq))) printk(KERN_WARNING "map irq failed\n"); @@ -268,9 +284,9 @@ return map_irq.pirq; } -static int msi_map_vector(struct pci_dev *dev, int entry_nr, int msi) +static int msi_map_vector(struct pci_dev *dev, int entry_nr, u64 table_base) { - return...
2020 Feb 18
2
[PATCH] x86/ioperm: add new paravirt function update_io_bitmap
..._cpu_ptr(&cpu_tss_rw); + + native_tss_update_io_bitmap(); + + iobitmap.bitmap = (uint8_t *)(&tss->x86_tss) + + tss->x86_tss.io_bitmap_base; + if (tss->x86_tss.io_bitmap_base == IO_BITMAP_OFFSET_INVALID) + iobitmap.nr_ports = 0; + else + iobitmap.nr_ports = IO_BITMAP_BITS; + + HYPERVISOR_physdev_op(PHYSDEVOP_set_iobitmap, &iobitmap); +} +#endif + static void xen_io_delay(void) { } @@ -1046,6 +1068,9 @@ static const struct pv_cpu_ops xen_cpu_ops __initconst = { .write_idt_entry = xen_write_idt_entry, .load_sp0 = xen_load_sp0, +#ifdef CONFIG_X86_IOPL_IOPERM + .update_io_bitmap = xe...
2020 Feb 18
2
[PATCH] x86/ioperm: add new paravirt function update_io_bitmap
..._cpu_ptr(&cpu_tss_rw); + + native_tss_update_io_bitmap(); + + iobitmap.bitmap = (uint8_t *)(&tss->x86_tss) + + tss->x86_tss.io_bitmap_base; + if (tss->x86_tss.io_bitmap_base == IO_BITMAP_OFFSET_INVALID) + iobitmap.nr_ports = 0; + else + iobitmap.nr_ports = IO_BITMAP_BITS; + + HYPERVISOR_physdev_op(PHYSDEVOP_set_iobitmap, &iobitmap); +} +#endif + static void xen_io_delay(void) { } @@ -1046,6 +1068,9 @@ static const struct pv_cpu_ops xen_cpu_ops __initconst = { .write_idt_entry = xen_write_idt_entry, .load_sp0 = xen_load_sp0, +#ifdef CONFIG_X86_IOPL_IOPERM + .update_io_bitmap = xe...
2011 Dec 05
3
xen 4.0.1/w 2.6.32 swapper: page allocation failure
...c 2 01:29:39 xenhost-rack1 kernel: [4437064.012178] [<ffffffff8135c557>] e1000_clean_rx_irq+0x212/0x2b7 Dec 2 01:29:39 xenhost-rack1 kernel: [4437064.012181] [<ffffffff8135b11f>] e1000_clean+0x75/0x21f Dec 2 01:29:39 xenhost-rack1 kernel: [4437064.012185] [<ffffffff8127e67c>] ? HYPERVISOR_physdev_op+0x16/0x4c Dec 2 01:29:39 xenhost-rack1 kernel: [4437064.012194] [<ffffffff8107d4ca>] __do_softirq+0xee/0x1c4 Dec 2 01:29:39 xenhost-rack1 kernel: [4437064.012199] [<ffffffff8103de2c>] call_softirq+0x1c/0x30 Dec 2 01:29:39 xenhost-rack1 kernel: [4437064.012202] [<ffffffff8103f4bd&g...
2013 Oct 22
0
[PATCH 3/3] x86: Support compiling out userspace I/O (iopl and ioperm)
...tss_struct *tss, xen_mc_issue(PARAVIRT_LAZY_CPU); } +#ifdef CONFIG_X86_IOPORT static void xen_set_iopl_mask(unsigned mask) { struct physdev_set_iopl set_iopl; @@ -919,6 +920,7 @@ static void xen_set_iopl_mask(unsigned mask) set_iopl.iopl = (mask == 0) ? 1 : (mask >> 12) & 3; HYPERVISOR_physdev_op(PHYSDEVOP_set_iopl, &set_iopl); } +#endif /* CONFIG_X86_IOPORT */ static void xen_io_delay(void) { @@ -1277,7 +1279,9 @@ static const struct pv_cpu_ops xen_cpu_ops __initconst = { .write_idt_entry = xen_write_idt_entry, .load_sp0 = xen_load_sp0, +#ifdef CONFIG_X86_IOPORT .set_iopl_...
2014 Mar 11
0
[PATCHv2 3/3] x86: Support compiling out userspace I/O (iopl and ioperm)
...tss_struct *tss, xen_mc_issue(PARAVIRT_LAZY_CPU); } +#ifdef CONFIG_X86_IOPORT static void xen_set_iopl_mask(unsigned mask) { struct physdev_set_iopl set_iopl; @@ -920,6 +921,7 @@ static void xen_set_iopl_mask(unsigned mask) set_iopl.iopl = (mask == 0) ? 1 : (mask >> 12) & 3; HYPERVISOR_physdev_op(PHYSDEVOP_set_iopl, &set_iopl); } +#endif /* CONFIG_X86_IOPORT */ static void xen_io_delay(void) { @@ -1279,7 +1281,9 @@ static const struct pv_cpu_ops xen_cpu_ops __initconst = { .write_idt_entry = xen_write_idt_entry, .load_sp0 = xen_load_sp0, +#ifdef CONFIG_X86_IOPORT .set_iopl_...
2013 Oct 26
1
[PATCH 3/3] x86: Support compiling out userspace I/O (iopl and ioperm)
...> > +#ifdef CONFIG_X86_IOPORT > static void xen_set_iopl_mask(unsigned mask) > { > struct physdev_set_iopl set_iopl; > @@ -919,6 +920,7 @@ static void xen_set_iopl_mask(unsigned mask) > set_iopl.iopl = (mask == 0) ? 1 : (mask >> 12) & 3; > HYPERVISOR_physdev_op(PHYSDEVOP_set_iopl, &set_iopl); > } > +#endif /* CONFIG_X86_IOPORT */ > > static void xen_io_delay(void) > { > @@ -1277,7 +1279,9 @@ static const struct pv_cpu_ops xen_cpu_ops __initconst = { > .write_idt_entry = xen_write_idt_entry, > .load_sp0 = xen_...
2013 Oct 26
1
[PATCH 3/3] x86: Support compiling out userspace I/O (iopl and ioperm)
...> > +#ifdef CONFIG_X86_IOPORT > static void xen_set_iopl_mask(unsigned mask) > { > struct physdev_set_iopl set_iopl; > @@ -919,6 +920,7 @@ static void xen_set_iopl_mask(unsigned mask) > set_iopl.iopl = (mask == 0) ? 1 : (mask >> 12) & 3; > HYPERVISOR_physdev_op(PHYSDEVOP_set_iopl, &set_iopl); > } > +#endif /* CONFIG_X86_IOPORT */ > > static void xen_io_delay(void) > { > @@ -1277,7 +1279,9 @@ static const struct pv_cpu_ops xen_cpu_ops __initconst = { > .write_idt_entry = xen_write_idt_entry, > .load_sp0 = xen_...
2013 Oct 22
9
[PATCH 0/3] x86: Support compiling out userspace I/O (iopl and ioperm)
This patch series makes it possible to compile out the iopl and ioperm system calls, which allow privileged processes to request permission to directly poke I/O ports from userspace. Nothing on a modern Linux system uses these calls anymore, and anything new should be using /dev/port instead, or better yet writing a driver. Copying the bloat-o-meter stats from the final patch: 32-bit
2013 Oct 22
9
[PATCH 0/3] x86: Support compiling out userspace I/O (iopl and ioperm)
This patch series makes it possible to compile out the iopl and ioperm system calls, which allow privileged processes to request permission to directly poke I/O ports from userspace. Nothing on a modern Linux system uses these calls anymore, and anything new should be using /dev/port instead, or better yet writing a driver. Copying the bloat-o-meter stats from the final patch: 32-bit
2008 Nov 13
69
[PATCH 00 of 38] xen: add more Xen dom0 support
Hi Ingo, Here''s the chunk of patches to add Xen Dom0 support (it''s probably worth creating a new xen/dom0 topic branch for it). A dom0 Xen domain is basically the same as a normal domU domain, but it has extra privileges to directly access hardware. There are two issues to deal with: - translating to and from the domain''s pseudo-physical addresses and real machine
2011 Nov 13
8
ioperm problem
Hi, I''m trying to port AMD VGA passthru patch to the latest XEN and vanila kernel and I got SIGSEGV in static void ati_hw_out(uint16_t hport, uint32_t data) { ioperm(gfx_info.host_pio_base, gfx_info.pio_size, 1); asm volatile ("out %1, %0"::"Nd"(hport),"a"(data)); ioperm(gfx_info.host_pio_base, gfx_info.pio_size, 0); } I tried old 2.6.32
2008 Apr 30
23
[PATCH 00/23] ia64/xen domU take 5
Hi. This patchset implements ia64/xen domU support based on ia64/pv_ops frame work which was sent as another patchest. This patchset does the followings. - Some preparation work. Mainly importing header files to define related structures. - Then, define functions related to hypercall which is the way to communicate with Xen hypervisor. - Add some helper functions which is necessary to
2008 Apr 30
23
[PATCH 00/23] ia64/xen domU take 5
Hi. This patchset implements ia64/xen domU support based on ia64/pv_ops frame work which was sent as another patchest. This patchset does the followings. - Some preparation work. Mainly importing header files to define related structures. - Then, define functions related to hypercall which is the way to communicate with Xen hypervisor. - Add some helper functions which is necessary to