diff options
author | Vitaly Kuznetsov <vkuznets@redhat.com> | 2017-08-02 18:09:14 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2017-08-10 16:50:22 +0200 |
commit | fc53662f13b889a5a1c069e79ee1e3d4534df132 (patch) | |
tree | 5f4c144bbc80cb0e6862fc59caf82665164dbf39 /drivers/hv | |
parent | 79cadff2d92bb8b1448f6dba6861d15adc3dc4cb (diff) | |
download | linux-fc53662f13b889a5a1c069e79ee1e3d4534df132.tar.gz linux-fc53662f13b889a5a1c069e79ee1e3d4534df132.tar.bz2 linux-fc53662f13b889a5a1c069e79ee1e3d4534df132.zip |
x86/hyper-v: Make hv_do_hypercall() inline
We have only three call sites for hv_do_hypercall() and we're going to
change HVCALL_SIGNAL_EVENT to doing fast hypercall so we can inline this
function for optimization.
Hyper-V top level functional specification states that r9-r11 registers
and flags may be clobbered by the hypervisor during hypercall and with
inlining this is somewhat important, add the clobbers.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Reviewed-by: Stephen Hemminger <sthemmin@microsoft.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Jork Loeser <Jork.Loeser@microsoft.com>
Cc: K. Y. Srinivasan <kys@microsoft.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Simon Xiao <sixiao@microsoft.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: devel@linuxdriverproject.org
Link: http://lkml.kernel.org/r/20170802160921.21791-3-vkuznets@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/hv')
-rw-r--r-- | drivers/hv/connection.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/hv/connection.c b/drivers/hv/connection.c index 59c11ff90d12..45e806e3112f 100644 --- a/drivers/hv/connection.c +++ b/drivers/hv/connection.c @@ -32,6 +32,8 @@ #include <linux/hyperv.h> #include <linux/export.h> #include <asm/hyperv.h> +#include <asm/mshyperv.h> + #include "hyperv_vmbus.h" |