Received: by 2002:a05:7412:da14:b0:e2:908c:2ebd with SMTP id fe20csp1828019rdb; Mon, 9 Oct 2023 04:30:52 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEE/GJqhKNv2wlG90esxL2z/0SP4VZZn7liWbMNFOVRjtwdObLRLVovJG0JF+a7smU4ZU4v X-Received: by 2002:a05:6a20:1584:b0:15e:6909:533c with SMTP id h4-20020a056a20158400b0015e6909533cmr14965712pzj.30.1696851051774; Mon, 09 Oct 2023 04:30:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696851051; cv=none; d=google.com; s=arc-20160816; b=Ea0BvKWOUEKl5eWwzNJeOoA9UE/EmemlTGXUl/lhQho1NV1cMh7h2W6LgKO9dCgtln awrsgMmJcwsu9FxQAZdoAzT8cWDvw++tpbceIvFdpKN3x7zuRwUgj5T5Q/xDiU4IoLrv ZvtUZJ1wckCrF1e3r0uwnS29halCnEdkWl78a17NksKAvdB5H/JGYsHVUq73c2ci0grz icib4lJW2wHrFXwmhf/LN1OcLEl2vpN3E72cieiICFnhQALop/0ZJ/j21zqnAi8w3AM1 DfRTIZ+jyGmkktgGt7BQ3za1mjAEcJSCoKCNqNiycPqs9FITq5gyWNcQjykpAga+n/yh 32eA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=3Tdfc33f4Wm5FyFF+cSLn1Dj1lOMRUny12yMiSOCHJc=; fh=BoylY5xwNogZ1c5ouUTs5nTaFA8PMSlXV/3kNFTMtmQ=; b=wZXVURI0QyLsZzN1S0EpJ0pU3PSR0VgvRlJZShrrHTLleWkJsgDT0OcHHC9VXBEQi5 u1MZeLbqBRz2LaRvNlI735WeVTciSVqxyikxD3st3cKF6gBUOTZFRZ9e5/GRIPARyDyh WAqrZQy9Mih5fiu4eJkqXE6mtTldoMVLdUFwzThLksUM9ASpHestggNaGttVuUm0x9D/ +9jdPLgtjqC6NXNHbf/rZqytWmWwYePzE61gFByvOl7S52Rpqw8fnyJZ1n/7C3mI3QQw aX3JzcfWBByCwdm98vl0GEV0mTPLCZQUBfXLmgZV8DkLvujDqp7rt0E4sR+fxNsCYe+w oJBQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=WJPm4UrV; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from agentk.vger.email (agentk.vger.email. [23.128.96.32]) by mx.google.com with ESMTPS id x5-20020a654145000000b0059779ae589dsi1280049pgp.828.2023.10.09.04.30.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Oct 2023 04:30:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) client-ip=23.128.96.32; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=WJPm4UrV; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by agentk.vger.email (Postfix) with ESMTP id 6734A807FCFF; Mon, 9 Oct 2023 04:30:17 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at agentk.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346230AbjJILaD (ORCPT + 99 others); Mon, 9 Oct 2023 07:30:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44790 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346307AbjJILaA (ORCPT ); Mon, 9 Oct 2023 07:30:00 -0400 Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com [IPv6:2607:f8b0:4864:20::635]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5015BF2 for ; Mon, 9 Oct 2023 04:29:38 -0700 (PDT) Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-1c5db4925f9so32277875ad.1 for ; Mon, 09 Oct 2023 04:29:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1696850977; x=1697455777; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=3Tdfc33f4Wm5FyFF+cSLn1Dj1lOMRUny12yMiSOCHJc=; b=WJPm4UrVBQxCMc5Yha1Jv3On1e+7JRDxt/VPAk5AWWsjsgntsYvFRtutw60szaHsGo LbXrZ5ahVJ5hQMSMfWDarTEn3uzPjpjuM0Tv/JgBV7JB6z9ZJcrygJHnVsYXtmLZHBmv 9fQ5Y0qo7wjyqPvP0eN7VxXixZ6NkfEIwVPnGiE4ulWfziwx+mtbOshpt4JGYCdn5GMO R5lLJyxGeWB8pfJYQZeUGKZKZTBBbJjzepZjIa5dj3sQng2Lr1JUTLphUTUmIBCoR7CO FIilT+W5bzPDZ5rW16GCnXDv7g3g8mvevm/KDxVtOp9egQrRzQKuhZoOmTj+RSrOykiM b9rQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696850977; x=1697455777; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=3Tdfc33f4Wm5FyFF+cSLn1Dj1lOMRUny12yMiSOCHJc=; b=ISDF/yJhgnpslSqP2U886IeJsn5zL6ev4Mf+8xZbXTjvnRokKi0uMZomlIhWwUvRup Nzvcf4zc3No4pMR5emRGEY7KaY9WL33SezQlJqh3kWBUeoUxG2bXoWyceYb5ARwtm3tO RLZNd9MYS7zgUd/GXmf/WZys2R4DjuIVMHYvW494AjvGeU8oyHm8D40QgUE5enLJPUFn 7P1mkjwCC3SlJD3g4vVDNHiOfQXg8HQGQXCCi3FjQQlk6+VVzV/JCFdNitfTf9tZmfkl FWjvFKHLLPrbKa0YYMofomE2nLM3zmtdW/TtVOQGDZ98kQp4YZsNne+WUd8o7765BoC+ WM9A== X-Gm-Message-State: AOJu0YzXve5rzG8VxK5j+ZKES0hcTDFOSbm8pjtlFiD4CvZjz5BBG6Gc 5J2aBepVuUJxMN52539HEmxyWQ== X-Received: by 2002:a17:902:c70b:b0:1c6:2866:5aeb with SMTP id p11-20020a170902c70b00b001c628665aebmr11765287plp.9.1696850977501; Mon, 09 Oct 2023 04:29:37 -0700 (PDT) Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id b10-20020a170903228a00b001b03a1a3151sm9357515plh.70.2023.10.09.04.29.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Oct 2023 04:29:36 -0700 (PDT) From: Viresh Kumar To: Juergen Gross , Oleksandr Tyshchenko , Stefano Stabellini Cc: Viresh Kumar , Vincent Guittot , =?UTF-8?q?Alex=20Benn=C3=A9e?= , stratos-dev@op-lists.linaro.org, Erik Schilling , Manos Pitsidianakis , Mathieu Poirier , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH V3 0/2] xen: privcmd: Add ioeventfd support Date: Mon, 9 Oct 2023 16:59:23 +0530 Message-Id: X-Mailer: git-send-email 2.31.1.272.g89b43f80a514 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=2.7 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on agentk.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (agentk.vger.email [0.0.0.0]); Mon, 09 Oct 2023 04:30:17 -0700 (PDT) X-Spam-Level: ** Hello, Now that irqfd support (backend to guest interrupt) is already merged, this series solves the other part of the problem, i.e. ioeventfd (guest to backend interrupt). More details inside the commits. -- Viresh V2->V3: - Remove explicit barriers and depend on spin lock instead to take care of it. - Move check for empty ioeventfds list to privcmd_ioeventfd_deassign(), which could earlier call ioreq_free() even when the list wasn't empty and so we returned without printing a warning in v1 earlier. V2 implemented it incorrectly. V1->V2: - Increment irq_info refcnt only for valid info. - Use u64 type for addr. - Add comments for use of barriers. - Use spin lock instead of mutex as we need to use them in irq handler. - Add a warning when kioreq is getting freed and ioeventfds list isn't empty. - Use struct_size(). - Validate number of vcpus as well. Viresh Kumar (2): xen: evtchn: Allow shared registration of IRQ handers xen: privcmd: Add support for ioeventfd drivers/xen/Kconfig | 8 +- drivers/xen/events/events_base.c | 3 +- drivers/xen/evtchn.c | 2 +- drivers/xen/privcmd.c | 405 +++++++++++++++++++++++++++++- include/uapi/xen/privcmd.h | 18 ++ include/xen/interface/hvm/ioreq.h | 51 ++++ 6 files changed, 479 insertions(+), 8 deletions(-) create mode 100644 include/xen/interface/hvm/ioreq.h -- 2.31.1.272.g89b43f80a514