From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.3 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 67593C4338F for ; Mon, 23 Aug 2021 17:19:20 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 542E961529 for ; Mon, 23 Aug 2021 17:19:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231254AbhHWRUA (ORCPT ); Mon, 23 Aug 2021 13:20:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41492 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229755AbhHWRT4 (ORCPT ); Mon, 23 Aug 2021 13:19:56 -0400 Received: from mail-pf1-x431.google.com (mail-pf1-x431.google.com [IPv6:2607:f8b0:4864:20::431]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8CEFAC061575 for ; Mon, 23 Aug 2021 10:19:13 -0700 (PDT) Received: by mail-pf1-x431.google.com with SMTP id 7so15949735pfl.10 for ; Mon, 23 Aug 2021 10:19:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=IWL7Yh+mP65xmvAitJG8b6Di+ZqbYJAqwLYk9jhbuJA=; b=HxHnaTbLz9/e7xkXCnUYhY/tMz8hJs+Dx98kRcQoj8kkPcbBhBYtGEJKBn+3ayLFYd zJwdWA8cuMtmtCtYDqAbxn2DP1y69H+qQKCvveWQZJQeixoPrhQFJZNDajvWqu4ninzD /pSwkXlIXyDarPPlMI7K2e+Wf8F8Ln3mNo6jD1PW3CNu1vqjcq72RUTc62fugkMF6svz KFll8FmyuETvuMsjySSQYf/2z02qFnL2KJ+t0UpwGI8AUbumynMo84ICtCsSCw2uWpRm F6si4fM9HnkKxsr0CzIpMFeaz9pxXQyb84yG/ymKaipcPDi2bDhimAVzjf1saPcyVkM+ BxWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=IWL7Yh+mP65xmvAitJG8b6Di+ZqbYJAqwLYk9jhbuJA=; b=tko3gmA6knSdKOFgyh3UkAQaJeQ31dJTh/2LKegRlvWH8P8gltmUwoWiOtXuLRXtUU Zai8UafWfCRcTHvo78sTHeCZxQJ5z9oF1mnzXC4euG8EhZv5RYtCRTbyQgUC56sfI/Kg xkdMfKbAXmdjz9D1eC84QlzVRDZbEPhUZx1UGiWtdx2QTk/YgZqOe9HHdfQ1st4Ze7sw MzjYkdO/cklSg7g/3lcoxTHQ7q5oR+kbLnepkm/t3izSctSQU3dd9f4/RWXiI6PxqxJl j32BU53slNSoX1ZODcV3vrm9+n5CY7Ylu4sCrYBwO3YQ6fg3F2Gkrz8NIlDrtpkPSvm1 Qq5A== X-Gm-Message-State: AOAM530SyG3D7uyfo556+jL4OTtuM2ERMm73rOxWuQMXIZTjrdslOEQB 0pPNKYKhruhXUaDsrrqtyJIIdQ== X-Google-Smtp-Source: ABdhPJxzIOCoUVt4Ja+vSdSKmWsDnBnppesoRISHVIhFr00eatLZ/wC33b0j+2gt2n/J4IpFJb6pHw== X-Received: by 2002:a63:ef12:: with SMTP id u18mr32753706pgh.331.1629739152905; Mon, 23 Aug 2021 10:19:12 -0700 (PDT) Received: from google.com (157.214.185.35.bc.googleusercontent.com. [35.185.214.157]) by smtp.gmail.com with ESMTPSA id z131sm17195346pfc.159.2021.08.23.10.19.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Aug 2021 10:19:12 -0700 (PDT) Date: Mon, 23 Aug 2021 17:19:06 +0000 From: Sean Christopherson To: Peter Gonda Cc: kvm@vger.kernel.org, Paolo Bonzini , David Rientjes , "Dr . David Alan Gilbert" , Brijesh Singh , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , linux-kernel@vger.kernel.org Subject: Re: [PATCH 0/2 V5] Add AMD SEV and SEV-ES intra host migration support Message-ID: References: <20210823162756.2686856-1-pgonda@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210823162756.2686856-1-pgonda@google.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Aug 23, 2021, Peter Gonda wrote: > V5: > * Fix up locking scheme Please add a selftest to prove/verify the anti-deadlock scheme actually works. Unless I'm mistaken, only KVM_SEV_INIT needs to be invoked, i.e. the selftest wouldn't need anything remotely close to full SEV support. And that means it should be trivial to verify the success path as well. E.g. create three SEV VMs (A, B, and C) and verify migrating from any VM to any other VM works (since none of the VMs have memory regions). Then spin up eight pthreads and have each thread concurrently migrate a specific combination an arbitrary number of times. Ignore whether the migration failed or succeeded, "success" from the test's perspective is purely that it completed, i.e. didn't deadlock.