search for: ioreq_t

Displaying 11 results from an estimated 11 matches for "ioreq_t".

2009 Mar 02
0
ioemu: make various functions in i386-dm/helper2.c static
...te.orig/i386-dm/helper2.c 2009-03-02 15:18:05.000000000 +1100 +++ ioemu-remote/i386-dm/helper2.c 2009-03-02 15:18:33.000000000 +1100 @@ -211,7 +211,7 @@ target_phys_addr_t cpu_get_phys_page_deb } //some functions to handle the io req packet -void sp_info(void) +static void sp_info(void) { ioreq_t *req; int i; @@ -281,7 +281,8 @@ static ioreq_t *cpu_get_ioreq(void) return NULL; } -unsigned long do_inp(CPUState *env, unsigned long addr, unsigned long size) +static unsigned long do_inp(CPUState *env, unsigned long addr, + unsigned long size) { swit...
2005 Jun 30
0
[PATCH][2/10] Extend the VMX intercept mechanism to include mmio as well as portio.
...xen/include/asm-x86/vmx_intercept.h --- a/xen/include/asm-x86/vmx_intercept.h Thu Jun 30 03:20:48 2005 +++ b/xen/include/asm-x86/vmx_intercept.h Thu Jun 30 04:08:50 2005 @@ -1,4 +1,3 @@ - #ifndef _VMX_INTERCEPT_H #define _VMX_INTERCEPT_H @@ -13,18 +12,45 @@ typedef int (*intercept_action_t)(ioreq_t*); +enum {PORTIO, MMIO}; + struct vmx_handler_t { int num_slot; struct { unsigned long addr; + int type; unsigned long offset; intercept_action_t action; } hdl_list[MAX_IO_HANDLER]; }; /* global io interception point in HV */ -ext...
2013 Nov 26
6
[PATCH v5] x86: properly handle MSI-X unmask operation from guests
...domain.h | 7 +++++++ xen/include/xen/pci.h | 1 + 4 files changed, 27 insertions(+), 0 deletions(-) diff --git a/xen/arch/x86/hvm/io.c b/xen/arch/x86/hvm/io.c index deb7b92..bd751d1 100644 --- a/xen/arch/x86/hvm/io.c +++ b/xen/arch/x86/hvm/io.c @@ -298,7 +298,11 @@ void hvm_io_assist(ioreq_t *p) } if ( p->state == STATE_IOREQ_NONE ) + { + if ( !msix_post_handler(curr) ) + gdprintk(XENLOG_WARNING, "msix_post_handler error\n"); vcpu_end_shutdown_deferral(curr); + } } static int dpci_ioport_read(uint32_t mport, ioreq_t *p) diff -...
2013 Nov 22
10
[PATCH v4] x86: properly handle MSI-X unmask operation from guests
...domain.h | 8 ++++++++ xen/include/xen/pci.h | 1 + 4 files changed, 30 insertions(+), 0 deletions(-) diff --git a/xen/arch/x86/hvm/io.c b/xen/arch/x86/hvm/io.c index deb7b92..6c83c25 100644 --- a/xen/arch/x86/hvm/io.c +++ b/xen/arch/x86/hvm/io.c @@ -297,6 +297,9 @@ void hvm_io_assist(ioreq_t *p) break; } + if ( msix_post_handler(curr) ) + gdprintk(XENLOG_ERR, "msix_post_handler error\n"); + if ( p->state == STATE_IOREQ_NONE ) vcpu_end_shutdown_deferral(curr); } diff --git a/xen/arch/x86/hvm/vmsi.c b/xen/arch/x86/hvm/vmsi.c index 4826...
2013 Jun 04
13
[PATCH] x86/vtsc: update vcpu_time after hvm_set_guest_time
...xen/arch/x86/hvm/hvm.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index a962ce2..e257dcf 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -343,6 +343,12 @@ void hvm_do_resume(struct vcpu *v) ioreq_t *p; pt_restore_timer(v); + /* + * Update vcpu_info, since the call to pt_restore_timer can change + * the value in v->arch.hvm_vcpu.stime_offset that is used + * to calculate the TSC in vcpu_info->time. + */ + update_vcpu_system_time(v); check_wakeup_from_w...
2005 Nov 03
0
[PATCH] vmx-platform-vmread.patch
..._prefix(opcode, instr, &rex); - - __vmread(GUEST_RFLAGS, &eflags); - if (eflags & X86_EFLAGS_VM) - vm86 = 1; if (vm86) { /* meaning is reversed */ if (instr->op_size == WORD) @@ -636,7 +631,6 @@ struct vcpu *v = current; vcpu_iodata_t *vio; ioreq_t *p; - int vm86; struct cpu_user_regs *regs; extern long evtchn_send(int lport); @@ -649,8 +643,6 @@ } p = &vio->vp_ioreq; - - vm86 = regs->eflags & X86_EFLAGS_VM; if (test_bit(ARCH_VMX_IO_WAIT, &v->arch.arch_vmx.flags)) { printf(&qu...
2010 Aug 12
59
[PATCH 00/15] RFC xen device model support
Hi all, this is the long awaited patch series to add xen device model support in qemu; the main author is Anthony Perard. Developing this series we tried to come up with the cleanest possible solution from the qemu point of view, limiting the amount of changes to common code as much as possible. The end result still requires a couple of hooks in piix_pci but overall the impact should be very
2005 Apr 02
1
[PATCH] VMX support for MMIO/PIO in VM8086 mode
...BX_MEM_WRITE_PHYSICAL(req->addr + (sign * i * req->size), req->size, &tmp); ===== xen/arch/x86/vmx.c 1.35 vs edited ===== --- 1.35/xen/arch/x86/vmx.c 2005-03-25 08:46:18 -05:00 +++ edited/xen/arch/x86/vmx.c 2005-03-31 13:41:48 -05:00 @@ -294,13 +294,17 @@ vcpu_iodata_t *vio; ioreq_t *p; unsigned long addr; - unsigned long eip; + unsigned long eip, cs, eflags; + int vm86; __vmread(GUEST_EIP, &eip); + __vmread(GUEST_CS_SELECTOR, &cs); + __vmread(GUEST_EFLAGS, &eflags); + vm86 = eflags & X86_EFLAGS_VM ? 1 : 0; VMX_DBG_LOG(DBG_L...
2012 Oct 20
15
xen-unstable, winxp32 very poor performance on AMD FX-8150, I bisected and changeset is 24770:7f79475d3de7
I ran a bisect to find out when Windows XP 32 bit becomes unusably slow. And I found the changeset that caused it. ========== The problem: ========== Windows 8 64 bit and 32 bit run fast and fine in the newest xen versions. Windows XP 32 bit runs unusably slow in anything new that I built from xen-unstable, but runs fast in 4.1.2 and 4.1.3 stable. While it is running slow, "xm top" or
2007 May 30
30
[VTD][patch 0/5] HVM device assignment using vt-d
...uint32_t add_mapping); 6) interface to common code: int iommu_setup(void); int iommu_domain_init(struct domain *d); int assign_device(struct domain *d, u8 bus, u8 devfn); int release_devices(struct vcpu *v); int hvm_do_IRQ_dpci(struct domain *d, unsigned int irq); int dpci_ioport_intercept(ioreq_t *p, int type); int iommu_map_page(struct domain *d, unsigned long gfn, unsigned long mfn); int iommu_unmap_page( struct domain *d, unsigned long gfn); void iommu_flush(struct domain *d, unsigned long gfn, u64 *p2m_entry); void iommu_set_pgd(struct domain *d); __________________________...
2013 Sep 23
57
[PATCH RFC v13 00/20] Introduce PVH domU support
This patch series is a reworking of a series developed by Mukesh Rathor at Oracle. The entirety of the design and development was done by him; I have only reworked, reorganized, and simplified things in a way that I think makes more sense. The vast majority of the credit for this effort therefore goes to him. This version is labelled v13 because it is based on his most recent series, v11.