All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Fabio Fantoni <fabio.fantoni@m2r.biz>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 00/17] x86/hvm: I/O emulation cleanup and fix
Date: Fri, 12 Jun 2015 11:45:43 +0000	[thread overview]
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD025946FF8@AMSPEX01CL01.citrite.net> (raw)
In-Reply-To: <557AB80B.3090501@m2r.biz>

> -----Original Message-----
> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> Sent: 12 June 2015 11:44
> To: Paul Durrant; xen-devel@lists.xenproject.org
> Subject: Re: [Xen-devel] [PATCH v2 00/17] x86/hvm: I/O emulation cleanup
> and fix
> 
> Il 11/06/2015 17:42, Paul Durrant ha scritto:
> > This patch series re-works much of the code involved in emulation of port
> > and memory mapped I/O for HVM guests.
> >
> > The code has become very convoluted and, at least by inspection, certain
> > emulations will apparently malfunction.
> >
> > The series is broken down into 17 patches (which are also available in
> > my xenbits repo:
> http://xenbits.xen.org/gitweb/?p=people/pauldu/xen.git
> > on the emulation22 branch) as follows:
> >
> > 0001-x86-hvm-simplify-hvmemul_do_io.patch
> > 0002-x86-hvm-re-name-struct-hvm_mmio_handler-to-hvm_mmio_.patch
> > 0003-x86-hvm-unify-internal-portio-and-mmio-intercepts.patch
> > 0004-x86-hvm-unify-dpci-portio-intercept-with-standard-po.patch
> > 0005-x86-hvm-unify-stdvga-mmio-intercept-with-standard-mm.patch
> > 0006-x86-hvm-revert-82ed8716b-fix-direct-PCI-port-I-O-emu.patch
> > 0007-x86-hvm-only-call-hvm_io_assist-from-hvm_wait_for_io.patch
> > 0008-x86-hvm-split-I-O-completion-handling-from-state-mod.patch
> > 0009-x86-hvm-remove-hvm_io_pending-check-in-hvmemul_do_io.patch
> > 0010-x86-hvm-remove-HVMIO_dispatched-I-O-state.patch
> > 0011-x86-hvm-remove-hvm_io_state-enumeration.patch
> > 0012-x86-hvm-use-ioreq_t-to-track-in-flight-state.patch
> > 0013-x86-hvm-only-acquire-RAM-pages-for-emulation-when-we.patch
> > 0014-x86-hvm-remove-extraneous-parameter-from-hvmtrace_io.patch
> > 0015-x86-hvm-make-sure-translated-MMIO-reads-or-writes-fa.patch
> > 0016-x86-hvm-remove-multiple-open-coded-chunking-loops.patch
> > 0017-x86-hvm-track-large-memory-mapped-accesses-by-buffer.patch
> >
> > v2:
> >   - Removed bogus assertion from patch 16
> >   - Re-worked patch 17 after basic testing of back-port onto XenServer
> 
> Thanks, I confirm that this new version solves the critical regression
> that causes dom0 insta-reboot.
> 
> I tested them on windows and linux hvm domUs, I had strange results...
> On windows 7 64 bit sp1 domU (with new winpv drivers) seems there are a
> small performance regression (or probably "only" latency increased) but
> I not found warning/error or something userful in logs, I'm not sure is
> real regression of your patches, if needed I'll retry without.
> On linux domU (fedora 21) qxl that had sse2 instructions problem still
> not working, same of latest 2 years not always qemu crash with a gdb
> showing sse2 instruction problem but xorg crash with EQ overflowing
> and/or domU remain with 100% cpu used by xorg qemu process at 100% cpu.
> I posted the backtrace similar time ago and a qemu/spice developer told
> that was a conseguence of other problem if I remember good.
> How can I be sure that sse2 or similar istructions (with videoram) are
> now working correctly?

Once I have debugged through XenServer automated testing I plan to add a targeted SSE test somewhere, possibly as a smoke test in hvmloader.

  Paul

> 
> If you need more informations/tests tell me and I'll post them.
> 
> Thanks for any reply and sorry for my bad english.
> 
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@lists.xen.org
> > http://lists.xen.org/xen-devel

      reply	other threads:[~2015-06-12 11:45 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-11 15:42 [PATCH v2 00/17] x86/hvm: I/O emulation cleanup and fix Paul Durrant
2015-06-11 15:42 ` [PATCH v2 01/17] x86/hvm: simplify hvmemul_do_io() Paul Durrant
2015-06-17 13:31   ` Jan Beulich
2015-06-17 13:54     ` Paul Durrant
2015-06-17 14:47       ` Jan Beulich
2015-06-17 14:55         ` Paul Durrant
2015-06-17 14:59           ` Jan Beulich
2015-06-11 15:42 ` [PATCH v2 02/17] x86/hvm: re-name struct hvm_mmio_handler to hvm_mmio_ops Paul Durrant
2015-06-17 12:43   ` Jan Beulich
2015-06-17 12:45     ` Paul Durrant
2015-06-11 15:42 ` [PATCH v2 03/17] x86/hvm: unify internal portio and mmio intercepts Paul Durrant
2015-06-17 14:22   ` Jan Beulich
2015-06-17 14:40     ` Paul Durrant
2015-06-17 14:55       ` Jan Beulich
2015-06-11 15:42 ` [PATCH v2 04/17] x86/hvm: unify dpci portio intercept with standard portio intercept Paul Durrant
2015-06-17 14:36   ` Jan Beulich
2015-06-17 14:46     ` Paul Durrant
2015-06-17 14:58       ` Jan Beulich
2015-06-17 15:17         ` Paul Durrant
2015-06-11 15:42 ` [PATCH v2 05/17] x86/hvm: unify stdvga mmio intercept with standard mmio intercept Paul Durrant
2015-06-17 15:50   ` Jan Beulich
2015-06-17 16:30     ` Paul Durrant
2015-06-18  6:23       ` Jan Beulich
2015-06-11 15:42 ` [PATCH v2 06/17] x86/hvm: revert 82ed8716b "fix direct PCI port I/O emulation retry Paul Durrant
2015-06-17 10:54   ` Paul Durrant
2015-06-11 15:42 ` [PATCH v2 07/17] x86/hvm: only call hvm_io_assist() from hvm_wait_for_io() Paul Durrant
2015-06-11 15:42 ` [PATCH v2 08/17] x86/hvm: split I/O completion handling from state model Paul Durrant
2015-06-11 15:42 ` [PATCH v2 09/17] x86/hvm: remove hvm_io_pending() check in hvmemul_do_io() Paul Durrant
2015-06-11 15:42 ` [PATCH v2 10/17] x86/hvm: remove HVMIO_dispatched I/O state Paul Durrant
2015-06-11 15:42 ` [PATCH v2 11/17] x86/hvm: remove hvm_io_state enumeration Paul Durrant
2015-06-11 15:42 ` [PATCH v2 12/17] x86/hvm: use ioreq_t to track in-flight state Paul Durrant
2015-06-11 15:42 ` [PATCH v2 13/17] x86/hvm: only acquire RAM pages for emulation when we need to Paul Durrant
2015-06-11 15:42 ` [PATCH v2 14/17] x86/hvm: remove extraneous parameter from hvmtrace_io_assist() Paul Durrant
2015-06-11 15:42 ` [PATCH v2 15/17] x86/hvm: make sure translated MMIO reads or writes fall within a page Paul Durrant
2015-06-11 15:43 ` [PATCH v2 16/17] x86/hvm: remove multiple open coded 'chunking' loops Paul Durrant
2015-06-11 15:43 ` [PATCH v2 17/17] x86/hvm: track large memory mapped accesses by buffer offset Paul Durrant
2015-06-12 10:44 ` [PATCH v2 00/17] x86/hvm: I/O emulation cleanup and fix Fabio Fantoni
2015-06-12 11:45   ` Paul Durrant [this message]

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=9AAE0902D5BC7E449B7C8E4E778ABCD025946FF8@AMSPEX01CL01.citrite.net \
    --to=paul.durrant@citrix.com \
    --cc=fabio.fantoni@m2r.biz \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.