Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp423212ybk; Wed, 13 May 2020 03:51:41 -0700 (PDT) X-Google-Smtp-Source: APiQypJEQawQ/48d3eZiUBppHQE+2liVTMXNO0YXMqxXSm9qHIDB+2aWcQjgEBEM4f6zwW3MnAQK X-Received: by 2002:a17:906:3da:: with SMTP id c26mr22158239eja.290.1589367101537; Wed, 13 May 2020 03:51:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589367101; cv=none; d=google.com; s=arc-20160816; b=x5sgGeke4iGO29dQdJtgT/e3tMzARe/RPlUqHPB3cuAT2JxHNM/zvqAJITtz4RilPd n/pdrfZgPlP7McWwtz5g6xiSNkEajko8hgr2q20lY+eg7DkKJQnn+xd/87BFQdJwW+x9 przhuR3fjqPquI5+tbEuUCJS8x4jJ8E5APEgzeOj+ejSqlmbm6vV5s57B5Jg9WPEquYs PDrndoiUh9wvXfQrMyZMB7JU9sRvbJNbqMtEQCgTJanE+73wY+D9or2R7YwqnlOtocl/ TDtdVY5Ye8cLJe8hZRjD1QPHJuH0S2Sjg5H8eiTjNFBdS/s6F1YNMl75C4jLzshk3lg1 tuTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:date:from :dkim-signature; bh=DkTu8Boy9+QFrN/nz9Dlp+esnFEQSCB9OlQtV2ZrE7g=; b=tOHe94m7SzVI9PEGS3LUY2KBeozUfC02Uk8TskX+TxVzE1fIrAnG4M/CCx1Bs/lhu7 0eJd1/OeXMJIkb54C3uRqnuxs7gxsSYU5rLFjSIqCKJrgT01OIe20pHYcKdmcpXKkKWo jKzf9WKrb3i1VqoGc8Q2tlvG2hBUwmvMwMu5VjlPe2mAUPjXWju6oc6q5BcMNZUB+wel U/KulEptM6Af4pe7T+CZkjhBKIYLGAi0yuNCh4ZRVhFxNj7DORaYZsP0j0cbO2kajjHh o0QeVBaNzqBTE7byCTYb1Axs+JOisWHwIF3v0LTylfTPffs+RqxwUkvxFynHDVYjKHE6 JO5w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=R75BSXoo; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id qu8si6685049ejb.188.2020.05.13.03.51.19; Wed, 13 May 2020 03:51:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=R75BSXoo; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732653AbgEMKs4 (ORCPT + 99 others); Wed, 13 May 2020 06:48:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58444 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726907AbgEMKs4 (ORCPT ); Wed, 13 May 2020 06:48:56 -0400 Received: from mail-wm1-x344.google.com (mail-wm1-x344.google.com [IPv6:2a00:1450:4864:20::344]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 61079C061A0C for ; Wed, 13 May 2020 03:48:54 -0700 (PDT) Received: by mail-wm1-x344.google.com with SMTP id w19so13175341wmc.1 for ; Wed, 13 May 2020 03:48:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:date:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=DkTu8Boy9+QFrN/nz9Dlp+esnFEQSCB9OlQtV2ZrE7g=; b=R75BSXoo/V9oojjqwA3xBMD3P4vlpXd3u9G2gA7d4K574Evnf5YbrWWh+MGgJzlRmY v1SYw72qo/2orD01DCCs6OJmX8zpu4Uj6M9TykGeeBcBBUXlh2oBFAV6WlVzt2ddERvJ 0oE88kPY+xs/eeYEO50EPToSNjn+iue4TmSdkGMZbnorC6LpOR0aKfaLHLFbI9zn7kuP jFTLhAF4AdrzPshcFYHolAqw0VaLGa/ZZ9ozjDPA9+YBafjJWAKOH1XyjRMzS4HtINQY PSM5KlyRMM1H6oC2eewNV3faKxvpmbWqilenWE9pZ0cWG/Vzk8PzbEvUCt7ukN3wzUub tu1Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:date:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=DkTu8Boy9+QFrN/nz9Dlp+esnFEQSCB9OlQtV2ZrE7g=; b=P4lSrntNiQKT3f0BjNoWqf/wPsBQ5IgBGFfkDM1bml0sw+ou6wu80hq2/xYj1EC9+n WCbwJ7Zt2OjyMxY4VnoQpJYeV/9/o6Xwp8hf6rSlSzfTPnnrLX/stXj/z5+woKwD2n0W nAB68oUCjqXrQf5XipgWOJXFDsNwpx+bDRFOCednVNMqyrP5Ofrt+44j2m/eJnseJWof 3AtUYULUGPB946InbXlmfK1G8f8CJ2kQ0uXRzH1y2mp29W9WrJLCVwdyyukhy8HIpjn1 qmnRwanlNDc706RhzuoLRKn4pMjTKEsafsYyO+c8O5Y73WrLoJX67+KM1LBt48Gd7zBR 0CVQ== X-Gm-Message-State: AGi0PubzRv1U4aImimoXBJZ8j19aOBUaE9j+swlnz3FImGFs7uYandzt xi0ZHfpcTRv6gmNp25X4fMhirw== X-Received: by 2002:a1c:790e:: with SMTP id l14mr41466821wme.174.1589366932710; Wed, 13 May 2020 03:48:52 -0700 (PDT) Received: from dbrazdil-macbookpro.roam.corp.google.com ([2a01:4b00:8523:2d03:e021:170a:2079:28ea]) by smtp.gmail.com with ESMTPSA id p4sm15896164wrq.31.2020.05.13.03.48.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 May 2020 03:48:51 -0700 (PDT) From: David Brazdil X-Google-Original-From: David Brazdil Date: Wed, 13 May 2020 11:48:50 +0100 To: Marc Zyngier Cc: Quentin Perret , David Brazdil , Catalin Marinas , James Morse , Julien Thierry , Suzuki K Poulose , Will Deacon , kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 02/15] arm64: kvm: Formalize host-hyp hypcall ABI Message-ID: <20200513104850.6rer4ued2uq6lpxs@dbrazdil-macbookpro.roam.corp.google.com> References: <20200430144831.59194-1-dbrazdil@google.com> <20200430144831.59194-3-dbrazdil@google.com> <87d07fj3g9.wl-maz@kernel.org> <20200507133320.GA16899@google.com> <871rns14dl.wl-maz@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <871rns14dl.wl-maz@kernel.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > > In fact David already has a nice patch that transforms the whole thing > > in a jump table, which is much nicer. I'll let him share the details > > :) > > Ah! Looking forward to reviewing it then! It's not actually that different. It still has the same header file, just uses the macros to generate a jump table rather than an array of function pointers. The main advantage being that we can avoid .hyp.text dependency on physvirt_offset. Feel free to have a look, branch 'topic/el2-obj-wip' at: https://android-kvm.googlesource.com/linux Perhaps this is not worth the trouble. We do hope to get to a point where the ABI between .text and .hyp.text is formalized, but in my mind that ABI is unlikely to be using this same hypcall path. On the other hand, I've played with preserving the function-pointer interface in the last couple of days and later in this series we do end up having to declare all of the hcall entry points (which now have two ELF symbols), so we end up with a similar table regardless, just with no IDs assigned. -David