From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roman Kagan Subject: [PATCH v8 0/2] kvm: x86: hyperv: guest->host event signaling via eventfd Date: Wed, 31 Jan 2018 16:56:31 +0300 Message-ID: <20180131135633.11228-1-rkagan@virtuozzo.com> Mime-Version: 1.0 Content-Type: text/plain Cc: "Denis V. Lunev" , Konrad Rzeszutek Wilk , Vitaly Kuznetsov , David Hildenbrand To: kvm@vger.kernel.org, Paolo Bonzini , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= Return-path: Received: from mail-he1eur01on0109.outbound.protection.outlook.com ([104.47.0.109]:21097 "EHLO EUR01-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753068AbeAaN4q (ORCPT ); Wed, 31 Jan 2018 08:56:46 -0500 Sender: kvm-owner@vger.kernel.org List-ID: Make it possible for guests using Hyper-V emulation to do guest->host notification via EVENT_SIGNAL hypercall without a user exit. Special thanks to David Hildenbrand for going through the spec with me to figure out the desired behavior. v7 -> v8: - rebase to latest master v6 -> v7: - reject non-zero flag number as invalid - adjust error returns to better match the spec v5 -> v6: - drop unnecessary srcu_read_lock/unlock, and clean up after that v4 -> v5: - fix block comment formatting v3 -> v4: - switch to kvm_vcpu_read_guest and take srcu_read_lock around it - rework and document the interpretation of the hypercall parameter - merge !fast version into kvm_hvcall_signal_event for brevity v2 -> v3: - expand docs on allowed values and return codes - fix uninitialized return - style fixes v1 -> v2: - make data types consistent - get by without the recently dropped struct hv_input_signal_event - fix subject prefixes Roman Kagan (2): kvm: x86: factor out kvm.arch.hyperv (de)init kvm: x86: hyperv: guest->host event signaling via eventfd Documentation/virtual/kvm/api.txt | 31 ++++++++++ arch/x86/include/asm/kvm_host.h | 2 + arch/x86/include/uapi/asm/hyperv.h | 2 + arch/x86/kvm/hyperv.h | 4 ++ include/uapi/linux/kvm.h | 13 +++++ arch/x86/kvm/hyperv.c | 112 ++++++++++++++++++++++++++++++++++++- arch/x86/kvm/x86.c | 13 ++++- 7 files changed, 175 insertions(+), 2 deletions(-) -- 2.14.3