xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [RFC 0/8] Improvements to HPET interupts
@ 2013-11-04 18:54 Andrew Cooper
  2013-11-04 18:54 ` [RFC 1/8] x86/timing: Command line parameter to disable ARAT Andrew Cooper
                   ` (7 more replies)
  0 siblings, 8 replies; 21+ messages in thread
From: Andrew Cooper @ 2013-11-04 18:54 UTC (permalink / raw)
  To: Xen-devel; +Cc: Andrew Cooper, Keir Fraser, Jan Beulich

This patch series is very RFC.  Some parts of the series are for debugging
purposes only, but I am open to including them formally if people think they
might be useful.

I have done the best I can at splitting out changes from the final patch, but
have mostly failed at identifying areas which can be pulled out in a
compile/bisect-safe way.

The "no-arat" command line option introduced by the first patch is required
for sensible testing of the patch.  There is very little hardware around which
is old enough to not have ARAT, but has MSI capable HPET channels; Any newer
hardware which is ARAT-capable will unconditionally use TSC deadline mode.

As far as functional testing goes, I have put as many ASSERT()s in as I think
are necessary, and have tested on a variety of hardware with Xen as idle as I
can make it (not even dom0 running).  The proportion of time spent in certain
C states (as reported by the 'c' debugkey) is consistent before and after the
change, and nothing has blown up.

I would appreciate any advice on where I might be able to split up the final
patch to make it clearer, and comments on the design/implementation.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Keir Fraser <keir@xen.org>
CC: Jan Beulich <JBeulich@suse.com>


Andrew Cooper (8):
  x86/timing: Command line parameter to disable ARAT
  x86/acpi: Warn about multiple HPET tables
  x86/hpet: Fix ambiguity in broadcast info message.
  x86/hpet: Debug and verbose hpet logging
  x86/msi: Refactor msi_compose_message() to not requrie an irq_desc
  x86/hpet: Adjust pointer vs array semantics of hpet_boot_cfg
  x86/hpet: debug keyhandlers
  x86/hpet: Use singe apic vector rather than irq_descs for HPET
    interrupts

 xen/arch/x86/acpi/boot.c            |   11 +
 xen/arch/x86/cpu/amd.c              |    2 +-
 xen/arch/x86/cpu/common.c           |    3 +
 xen/arch/x86/cpu/cpu.h              |    2 +
 xen/arch/x86/cpu/intel.c            |    5 +-
 xen/arch/x86/hpet.c                 |  596 +++++++++++++++++------------------
 xen/arch/x86/msi.c                  |    9 +-
 xen/drivers/passthrough/vtd/iommu.c |    2 +-
 xen/include/asm-x86/msi.h           |    2 +-
 9 files changed, 318 insertions(+), 314 deletions(-)

-- 
1.7.10.4

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2013-11-05 16:03 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-04 18:54 [RFC 0/8] Improvements to HPET interupts Andrew Cooper
2013-11-04 18:54 ` [RFC 1/8] x86/timing: Command line parameter to disable ARAT Andrew Cooper
2013-11-05 10:57   ` Jan Beulich
2013-11-04 18:54 ` [RFC 2/8] x86/acpi: Warn about multiple HPET tables Andrew Cooper
2013-11-05 10:58   ` Jan Beulich
2013-11-05 16:03     ` Andrew Cooper
2013-11-04 18:54 ` [RFC 3/8] x86/hpet: Fix ambiguity in broadcast info message Andrew Cooper
2013-11-05 11:02   ` Jan Beulich
2013-11-05 13:28     ` David Vrabel
2013-11-05 13:34       ` Jan Beulich
2013-11-05 13:36         ` David Vrabel
2013-11-04 18:54 ` [RFC 4/8] x86/hpet: Debug and verbose hpet logging Andrew Cooper
2013-11-04 18:54 ` [RFC 5/8] x86/msi: Refactor msi_compose_message() to not requrie an irq_desc Andrew Cooper
2013-11-05 11:05   ` Jan Beulich
2013-11-04 18:54 ` [RFC 6/8] x86/hpet: Adjust pointer vs array semantics of hpet_boot_cfg Andrew Cooper
2013-11-05 11:08   ` Jan Beulich
2013-11-04 18:54 ` [RFC 7/8] x86/hpet: debug keyhandlers Andrew Cooper
2013-11-05 11:11   ` Jan Beulich
2013-11-05 11:16     ` Andrew Cooper
2013-11-04 18:54 ` [RFC 8/8] x86/hpet: Use singe apic vector rather than irq_descs for HPET interrupts Andrew Cooper
2013-11-05 15:10   ` Jan Beulich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).