[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v3 0/5] x86: Use alternative mechanism to define CLAC/STAC



This patch set ports the basic alternative mechanism from Linux to Xen
and use it to define CLAC/STAC.

Version 1:
  * Initial version.

Version 2:
  * Use STR() as the only method for performing preprocessor stringificaion.
  * Set ideal_nops to k8_nops by default.
  * Make ideal_nops static and __initdata.
  * Mask the lowest bit when handling relative jump in apply_alternatives().
  * Move .altinstr_replacemen and altinstructions to .init section.
  * Include nops.h in alternative.h.
  * Some code style changes.

Version 3:
  * Use __stringify() instead of STR().
  * Coding style changes.
  * Add ASSERT(!local_irq_is_enabled()) in the beginning of 
apply_alternatives().
  * Remove local_irq_save()/local_irq_restore() in text_poke_early().

There are some changes related to ARM and AMD code in the first patch of this
series, but I don't have ARM and AMD environment to verify it. The changes in
Intel platform side have the same logic, and I verify it in Intel side.

Feng Wu (5):
  Use __stringify() as the only method for performing preprocessor
    stringificaion
  x86: Add definitions for NOP operation
  x86: Make set_nmi_callback return the old nmi callback
  x86: Port the basic alternative mechanism from Linux to Xen
  x86: Use alternative mechanism to define CLAC/STAC

 xen/arch/x86/Makefile             |   1 +
 xen/arch/x86/alternative.c        | 213 ++++++++++++++++++++++++++++++++++++++
 xen/arch/x86/bitops.c             |   9 +-
 xen/arch/x86/hvm/svm/svm.c        |   2 +-
 xen/arch/x86/setup.c              |   3 +
 xen/arch/x86/traps.c              |   4 +-
 xen/arch/x86/usercopy.c           |  20 ++--
 xen/arch/x86/xen.lds.S            |  15 +++
 xen/include/asm-arm/current.h     |   4 +-
 xen/include/asm-x86/alternative.h |  78 ++++++++++++++
 xen/include/asm-x86/asm_defns.h   |  23 ++--
 xen/include/asm-x86/multicall.h   | 115 ++++++++++----------
 xen/include/asm-x86/nmi.h         |   4 +-
 xen/include/asm-x86/nops.h        |  66 ++++++++++++
 xen/include/asm-x86/system.h      |   9 +-
 xen/include/xen/config.h          |   3 -
 16 files changed, 475 insertions(+), 94 deletions(-)
 create mode 100644 xen/arch/x86/alternative.c
 create mode 100644 xen/include/asm-x86/alternative.h
 create mode 100644 xen/include/asm-x86/nops.h

-- 
1.8.3.1


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.