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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id E4004C001E0 for ; Tue, 8 Aug 2023 23:31:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230250AbjHHXbh (ORCPT ); Tue, 8 Aug 2023 19:31:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:32940 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229643AbjHHXbf (ORCPT ); Tue, 8 Aug 2023 19:31:35 -0400 Received: from mail-pg1-x54a.google.com (mail-pg1-x54a.google.com [IPv6:2607:f8b0:4864:20::54a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3B2321BC7 for ; Tue, 8 Aug 2023 16:31:35 -0700 (PDT) Received: by mail-pg1-x54a.google.com with SMTP id 41be03b00d2f7-53f6e19f814so3928877a12.3 for ; Tue, 08 Aug 2023 16:31:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1691537495; x=1692142295; h=cc:to:from:subject:message-id:mime-version:date:reply-to:from:to:cc :subject:date:message-id:reply-to; bh=vCWDiaOK6oBwC1N/JsFyjgQDQveeX0EIpcqjh3sU/K4=; b=Inx83viYix2Se7Jb1ETomI+W1Zw6vezUhCgHSmdSAr8poGqBpfWExnh5zNfCaAJqXx Y0JBaPAPbfQLVyRAdZfMDAQ/y4UvdjF6bt0IlXWo5+AdxOZ17Mn4ODYEL4gKctWoF/iy rj9ApP11OCYcfsub/g94LJVrRjTnyl2LCnM2B+PJ9XviM5EWnO5fz0UAOBGGiZYek0SJ ZPJCjyNePTJiz2bnoiyUDkEYdeGPRraYeewj9cXixHHQlniuajeh4PF6gO03hIZQ4+9U APYuojQpT0AOdjAdd+GveUVCw3KTcfjkfTJ6+1777gSre8pX/ZW2MJ4pw7k4M3uEbfCK uqtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691537495; x=1692142295; h=cc:to:from:subject:message-id:mime-version:date:reply-to :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=vCWDiaOK6oBwC1N/JsFyjgQDQveeX0EIpcqjh3sU/K4=; b=fgUo1b9ryx0V6lb/Zm4ONQSw286BvritYeBc3zG/DGSm2BJN23WvlGic5Y1tbmwSjs nY5clSQX40gT5a6/j1GaRpEkiTSVWpyTxEkfanaLraVq+uwwxpV3Zyb38GdGiw9EHFtm 9+AqUn0td1YMZAPLILvB6FY3zZ07apDuOogUm0XNDlyPd07ll8+BSqfgx4E6vLymcJ/U xiMJxJzRRjCRNRawm67D7lZ4fbcYR5VIslWwgoXKKxyQhxt7giUlETKytmRZrrDAllYd ur1GU26sRw3hI6SYwZeGPJuIoFQ21PlzL5PCg6jkzTJ95rtebjZ0dv1wBiuHhelBRDdz u0MA== X-Gm-Message-State: AOJu0Yz62J7ZHYoy7y1UTOLIxnedmi5xMzr1hCKbWZfjwV1xpBssPZZQ DG2tL9EpatINeAwMHoK3N3922l2bouQ= X-Google-Smtp-Source: AGHT+IEYe9W78Lc1aySWyAogv3NS62l9pcCMEZluKPWhZv6PBdp2VIj2SJrkcEpHJjSQrmepgKOEmtnBLTI= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a17:902:d485:b0:1b7:c803:4818 with SMTP id c5-20020a170902d48500b001b7c8034818mr22359plg.0.1691537494674; Tue, 08 Aug 2023 16:31:34 -0700 (PDT) Reply-To: Sean Christopherson Date: Tue, 8 Aug 2023 16:31:30 -0700 Mime-Version: 1.0 X-Mailer: git-send-email 2.41.0.640.ga95def55d0-goog Message-ID: <20230808233132.2499764-1-seanjc@google.com> Subject: [PATCH 0/2] KVM: SVM: Set pCPU during IRTE update if vCPU is running From: Sean Christopherson To: Sean Christopherson , Paolo Bonzini Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, "dengqiao . joey" , Alejandro Jimenez , Joao Martins , Maxim Levitsky , Suravee Suthikulpanit Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Fix a bug where KVM doesn't set the pCPU affinity for running vCPUs when updating IRTE routing. Not setting the pCPU means the IOMMU will signal the wrong pCPU's doorbell until the vCPU goes through a put+load cycle. I waffled for far too long between making this one patch or two. Moving the lock doesn't make all that much sense as a standalone patch, but in the end, I decided that isolating the locking change would be useful in the unlikely event that it breaks something. If anyone feels strongly about making this a single patch, I have no objection to squashing these together. Sean Christopherson (2): KVM: SVM: Take and hold ir_list_lock when updating vCPU's Physical ID entry KVM: SVM: Set target pCPU during IRTE update if target vCPU is running arch/x86/kvm/svm/avic.c | 59 +++++++++++++++++++++++++++++++++++------ 1 file changed, 51 insertions(+), 8 deletions(-) base-commit: 240f736891887939571854bd6d734b6c9291f22e -- 2.41.0.640.ga95def55d0-goog