From nobody Thu Dec 18 08:10:47 2025 Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 79AAF2036EC for ; Thu, 24 Apr 2025 14:13:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745504034; cv=none; b=ebj88A630ReoiPzj4m+4U0f/vnvqwFCOqgPJFuouIQFXFQuUhIZmjwy1eYQ5HXeKhYCIwYaBHuSMO22hYaK7ud7EnDnxYiS9Y/QPnTJ2VYCQItViAlsQ+OF5wRW/wKYzuEr74QBkf7bcUZeP4x2krrdhv+wLJDgjnX2T+mgLJIs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745504034; c=relaxed/simple; bh=yHQVbNXozVjVHt5pOWEf6CFk11nfYNM4wHopdbI5gbI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=r+lOvLYC7PSVNfBL2pSu3FXXwc6412t2X+396qiNGNaH96bXrlqPXwlQ6QmQl39xzFGIcLi1Rho7x97z6XqqlTDAX/nsgFnNSv1U/WQA8evdw/Zd6pBEN3mDIXlqyIOQyqTvD8tSBbRsH3wn7nF7exQ52z5Yzr4fq4QAhPdPRSY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=TMpYcwLk; arc=none smtp.client-ip=209.85.221.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="TMpYcwLk" Received: by mail-wr1-f46.google.com with SMTP id ffacd0b85a97d-39c0e0bc733so989121f8f.1 for ; Thu, 24 Apr 2025 07:13:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1745504030; x=1746108830; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AlljNambtbwwvkzAI4LjAz2eo7Ti1KUJrgs8M2UB6Bg=; b=TMpYcwLkfLTj/ATVziMuksWaNsV3xs053pw6b7Tre2eq7ME2fqLNfMFtBGsCfJ0eLv YaiXKTnIikVyMFLz6c8RFczV2dxEuTPlqUn0VbE8hvXxjTAi2mOelNzXjdxPAmnkSCfd 3LifOZSqAm46lqRHFyEjsJsmzn/kOOCCpL0PCLxtWs3mOsRWSy+t7/E8RaWNKpD4LyWW QEM8MkS1ukD7WBR9ph7HvsZQWjM1KNmig+Vr6IRoe9cSARPdbP8NtrVV38KehoUVsO5h vE9r4xl6/rZ+05p1xaciTkPpWpp6a1HaUXeVGrmcWltf1wygu6Br9SLBLSbQuwtYg8jY 0m/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745504030; x=1746108830; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AlljNambtbwwvkzAI4LjAz2eo7Ti1KUJrgs8M2UB6Bg=; b=UlTyR3yzgg99lAK7eOblPjZZ9vSiR8FgfF5Xc5YFfQSGDYZfNqSIih8YKZZLU2dTw0 MnvFXGMRW0niFEuWLDgYi3Z8kjs4SuyBz+QZ5anhSG4WhL/MRSH5I0Nzr09ewQgOtfTc E5zRpHP8wpo0X4BNnJHLDIzzQXcS15en57zT9d+/gpf7YsCABIxsNNfnc4/XI5E4J3Cm bcQV7pMmKdod3RIkvrlWUUL9Nft4uVSxgP8tMvBBvsUeDu0baKIyFx7EgF5RRHJT9oAe B14Y8+FHAOrY80HCQd+nKA74emdKeJyj+2Zgcb2JG/3K35sRoRLm972jUG5N2NRVboaQ ShCw== X-Gm-Message-State: AOJu0YxZ/XbY/P0a6r+JOGwj7Xsew2vXiR5omZthJQHcyh23NL3O1dBN omuGnsFr2rhLiehgc4ijvWn6uU/cShUuiB9QLmjSue5DYE3pspW9wbvdOAKDZbxu2AXYIQCikGX prA0= X-Gm-Gg: ASbGncsp/EPNfoIjHud8OVGkDWdsreKUZ6uIXi9B2Ac64EzEVOp0zAo1QsiZajmW+qi 3Pb1UvVSAhxIkgswMrj8HjHGInHGNvVJdncYbXcB3eRIQbZCl+tpBco+B5FIV4N+SbTsfdW06OI sdONfYf4LqvMM9jOAERFz1ZHUYuPWZ+xUvEq5iHhYcx9JZHeNnWH+PA3x4flC2iq51CQ0rTtNQ2 WNVQbQozFvkIhDW9tSn/LM4dBel2sz9tnkRU7HsDX4TJasDT0HHjjqwFZVPpmXkAKWVK4bmXl6i 2VRXX/vzD2Dpl4s9t1UPAO9/qb2i666tIorMEBaShi6kOI2bv5rdFTbq+2JU/TKnnB9wUi8OcPQ iTKfRP0RVj8RYO6yh X-Google-Smtp-Source: AGHT+IGjTSYHUF3tyGvvpZJy9ttFB+SjTk/OBEoax4K5qs9LZf6N8lXayXTA0lInN+EeJy++KbQTNQ== X-Received: by 2002:a05:6000:18a2:b0:391:47d8:de2d with SMTP id ffacd0b85a97d-3a06cf5ed4cmr2481988f8f.23.1745504030257; Thu, 24 Apr 2025 07:13:50 -0700 (PDT) Received: from seksu.systems-nuts.com (stevens.inf.ed.ac.uk. [129.215.164.122]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a06d4a8150sm2199951f8f.7.2025.04.24.07.13.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 24 Apr 2025 07:13:49 -0700 (PDT) From: Karim Manaouil To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev Cc: Karim Manaouil , Alexander Graf , Alex Elder , Catalin Marinas , Fuad Tabba , Joey Gouly , Jonathan Corbet , Marc Zyngier , Mark Brown , Mark Rutland , Oliver Upton , Paolo Bonzini , Prakruthi Deepak Heragu , Quentin Perret , Rob Herring , Srinivas Kandagatla , Srivatsa Vaddagiri , Will Deacon , Haripranesh S , Carl van Schaik , Murali Nalajala , Sreenivasulu Chalamcharla , Trilok Soni , Stefan Schmidt Subject: [RFC PATCH 04/34] KVM: Add weak stubs for irqchip-related functions for Gunyah builds Date: Thu, 24 Apr 2025 15:13:11 +0100 Message-Id: <20250424141341.841734-5-karim.manaouil@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250424141341.841734-1-karim.manaouil@linaro.org> References: <20250424141341.841734-1-karim.manaouil@linaro.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The generic KVM core code (e.g., kvm_main.c and eventfd.c) calls into irqchip-specific helpers such as kvm_set_irq(), kvm_irq_map_gsi(), and kvm_irq_map_chip_pin(). These functions are defined in kvm_irqchip.c, which is not required or compiled when porting KVM to run on top of the Gunyah hypervisor. To allow building the KVM core code without linking errors in such configurations, provide weak stub implementations of these functions in eventfd.c. These stubs return appropriate default values (e.g., -ENXIO or -1) to indicate that the functionality is not available. This allows the KVM core to build successfully for platforms that do not use the in-kernel irqchip support, such as Gunyah. Signed-off-by: Karim Manaouil --- virt/kvm/eventfd.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/virt/kvm/eventfd.c b/virt/kvm/eventfd.c index d6702225e7f2..2a658d8277ed 100644 --- a/virt/kvm/eventfd.c +++ b/virt/kvm/eventfd.c @@ -56,6 +56,26 @@ kvm_arch_irqfd_allowed(struct kvm *kvm, struct kvm_irqfd= *args) return true; } =20 +int __attribute__((weak)) +kvm_set_irq(struct kvm *kvm, int irq_source_id, u32 irq, int level, + bool line_status) +{ + return -ENXIO; +} + +int __attribute__((weak)) +kvm_irq_map_gsi(struct kvm *kvm, + struct kvm_kernel_irq_routing_entry *entries, int gsi) +{ + return 0; +} + +int __attribute__((weak)) +kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin) +{ + return -1; +} + static void irqfd_inject(struct work_struct *work) { --=20 2.39.5