From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752688AbcDXKpm (ORCPT ); Sun, 24 Apr 2016 06:45:42 -0400 Received: from mail.eperm.de ([89.247.134.16]:53260 "EHLO mail.eperm.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752620AbcDXKpZ (ORCPT ); Sun, 24 Apr 2016 06:45:25 -0400 From: Stephan Mueller To: herbert@gondor.apana.org.au, Theodore Tso Cc: sandyinchina@gmail.com, Jason Cooper , John Denker , "H. Peter Anvin" , linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 6/6] hyperv IRQ handler: trigger LRNG Date: Sun, 24 Apr 2016 12:44:13 +0200 Message-ID: <2851381.PQhx4cj2Wv@positron.chronox.de> User-Agent: KMail/4.14.10 (Linux/4.4.7-300.fc23.x86_64; KDE/4.14.18; x86_64; ; ) In-Reply-To: <1589319.WyasadRQQe@positron.chronox.de> References: <1589319.WyasadRQQe@positron.chronox.de> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The Hyper-V Linux Integration Services use the VMBus implementation for communication with the Hypervisor. VMBus registers its own interrupt handler that completely bypasses the common Linux interrupt handling. The interrupt handler is now added the invocation of the LRNG IRQ collection function to also benefit from entropy under Hyper-V. If the implementation of the VMBus and its subordinate drivers is changed such that they resemble the Xen implementation where the received IRQs are forwarded to the standard Linux interrupt handling logic, this patch should be dropped. Signed-off-by: Stephan Mueller --- drivers/hv/vmbus_drv.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c index 64713ff..afa2de0 100644 --- a/drivers/hv/vmbus_drv.c +++ b/drivers/hv/vmbus_drv.c @@ -41,6 +41,7 @@ #include #include #include +#include #include "hyperv_vmbus.h" static struct acpi_device *hv_acpi_dev; @@ -801,6 +802,8 @@ static void vmbus_isr(void) else tasklet_schedule(hv_context.msg_dpc[cpu]); } + + lrng_irq_process(); } -- 2.5.5