diff options
author | Isaku Yamahata <yamahata@valinux.co.jp> | 2009-03-04 13:06:52 +0100 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2009-03-26 19:02:42 +0100 |
commit | 03f511dd02f1431ef652fb97a7f2fe7aef47e025 (patch) | |
tree | 87bbff26febaa0eb0e85d1c23886a1cc913af30a /arch/ia64/include/asm/paravirt.h | |
parent | ia64/pv_op/binarypatch: add helper functions to support binary patching for p... (diff) | |
download | linux-03f511dd02f1431ef652fb97a7f2fe7aef47e025.tar.xz linux-03f511dd02f1431ef652fb97a7f2fe7aef47e025.zip |
ia64/pv_ops: implement binary patching optimization for native.
implement binary patching optimization for pv_cpu_ops.
With this optimization, indirect call for pv_cpu_ops methods can be
converted into inline execution or direct call.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64/include/asm/paravirt.h')
-rw-r--r-- | arch/ia64/include/asm/paravirt.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/ia64/include/asm/paravirt.h b/arch/ia64/include/asm/paravirt.h index fc433f6c3275..2eb0a981a09a 100644 --- a/arch/ia64/include/asm/paravirt.h +++ b/arch/ia64/include/asm/paravirt.h @@ -118,6 +118,14 @@ struct pv_init_ops { int (*arch_setup_nomca)(void); void (*post_smp_prepare_boot_cpu)(void); + +#ifdef ASM_SUPPORTED + unsigned long (*patch_bundle)(void *sbundle, void *ebundle, + unsigned long type); + unsigned long (*patch_inst)(unsigned long stag, unsigned long etag, + unsigned long type); +#endif + void (*patch_branch)(unsigned long tag, unsigned long type); }; extern struct pv_init_ops pv_init_ops; |