Received: by 10.223.164.202 with SMTP id h10csp1419586wrb; Wed, 15 Nov 2017 20:16:31 -0800 (PST) X-Google-Smtp-Source: AGs4zMasnIu/XDSa3zuwJ77jAp1OpIb1+EZx5mZQlP2+6F8yt0tuv5Ewa/1A1eJ+oxBKBh5aBogg X-Received: by 10.99.127.87 with SMTP id p23mr371484pgn.400.1510805791535; Wed, 15 Nov 2017 20:16:31 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510805791; cv=none; d=google.com; s=arc-20160816; b=Ga4Dz5s5pLm6FkvAm0GkxUZTkOs8ju8im0CK6qUvwPjjaU0jnFuOy7Q6zK4b5Naj9i MQNdlIklSDn6GB+N1cp37tCbPa3iJ+XusomkkDP4hGant8QQN93/N/IsLa5cwRHmeqxD iEqYfGRDUmz+RRfxaN3SQmC6ljJXSoVPIbklSDvXJUjYOuXN2Q3NkFB2DVSQZR+Ehjpk vgbs+lJ7vnNmXQXGbPlQP8afzsI2LN9mmJB6uu/l1eIzXclrKJ0+1fgFJ/aDnfYlyZ8/ uNoi0mOdREjLhqh+eszQ1woKmbOgUIda4zDDQ4QxJfsbNkWH/mrf4StIlQOgCoj/00MN Mx0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-language :content-transfer-encoding:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature :arc-authentication-results; bh=r8otCgyNuUXLtrewdFi/XfgLNfWXUB9KGpm4xOUxLZs=; b=MYJzByYCggPfQ8uzb1FABE3GPmTWsWn4J8dzx3InDsCyzLEwEmyzl1pVLKA/DGhvi5 Tr7xpOYuL1rLivaRC82IgL1zrw0MhZPU0wCJgQ3Fvs8EG3vpGKNzkE8mTdUbl29iSZaD 5nk8b31InYafJt1lm8/wR+/BeFytFEVZCv6V5dNQxVcN58Kwil527OB5GKZNwUZu9AJh h339lmGtFKXma60D8rkyqEiuGDTHivLbMyefahIHKEbMzpwSfjEcFipsEgmmDSRsYO27 dvUQk0f0nMbO4PLlKjJTz/gglZ3LoN3Fa6laVnEkB8lpxi1MGotOw7vosYb6RsGoRWly vHsg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=KXO8gcxs; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w18si168001pll.461.2017.11.15.20.16.19; Wed, 15 Nov 2017 20:16:31 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=KXO8gcxs; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758887AbdKPCuv (ORCPT + 89 others); Wed, 15 Nov 2017 21:50:51 -0500 Received: from mail-oi0-f65.google.com ([209.85.218.65]:46576 "EHLO mail-oi0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757738AbdKPCum (ORCPT ); Wed, 15 Nov 2017 21:50:42 -0500 Received: by mail-oi0-f65.google.com with SMTP id n16so8423157oig.3; Wed, 15 Nov 2017 18:50:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=r8otCgyNuUXLtrewdFi/XfgLNfWXUB9KGpm4xOUxLZs=; b=KXO8gcxsdpwIhFGSiFvqvzT0+F3xAEaaTs1xOjfCYXAyklKf9kxol1u4j+09/asdR4 CKr6j/oqOCgTL+w0iRys28o6E7kHSeoSUNxDecSK8Ix7PidcOjwD+LgZJ3rTq50MlQNj xHYF6NBoa4wD4yUhUbZBd5P4jqkevPXRXSXKhIIWPHTXRXnOaG//LY81RE4mL+AUFY2a SgteIVKO9wlRI+M86pcPbSyFUcNyL/xO7EAWUZemqITYIYIFBdzL/1orGWG8sp/zFXH9 6z5w+A+7fQsVfvBT4WadrQDGXoifo+3Kd/lah7yGt3qhLArWX5g7OPVVSj2wfyw66Wtw lzRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=r8otCgyNuUXLtrewdFi/XfgLNfWXUB9KGpm4xOUxLZs=; b=AukSCERvUN1VzA4gRRbFlrmRxj/U9m4iK5D/L+Ty3UOnQjocjLp1WofH8i9tC8CXV7 RwiIDHKWi138u74jGniEP0w9dbYXjibdNA1/U66eePW7SrEcKgOIQJg7J/s34PopjIJn vWGBdGz+neuigNZ9f0FHELeHZiRSu3fdh+DtbK1Ri9C4jI+2fzVzWwCDoFcpqQJwP2y4 7sGi8vEYcDM7DjKYIPk6LSPujSvIgvzwtWSFFZGMcz6e1MsXSnmb8qOLiiesmtnYPJal z4JfxYhe7n8ptgSKnyx7jepGjtb15vgQioFWKy1vKbzeqOP9FDvSN1vlRVkf/dQP6jYX Wh9g== X-Gm-Message-State: AJaThX6v8KnOO3CeAg6iZK56zhAc2FLZDFwD1UvxA5WCq4W/UOh9lBlw V5LItXE74qiw3fg3rWS+RjU= X-Received: by 10.202.63.214 with SMTP id m205mr112022oia.137.1510800641655; Wed, 15 Nov 2017 18:50:41 -0800 (PST) Received: from [0.0.0.0] ([47.89.242.186]) by smtp.gmail.com with ESMTPSA id a203sm34025oib.47.2017.11.15.18.50.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 15 Nov 2017 18:50:41 -0800 (PST) Subject: Re: [PATCH 1/2] x86,kvm: move qemu/guest FPU switching out to vcpu_run To: Rik van Riel , "quan.xu04@gmail.com" , pbonzini@redhat.com Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, david@redhat.com, borntraeger@de.ibm.com, tglx@linutronix.de, rkrcmar@redhat.com References: <20171114215424.32214-1-riel@redhat.com> <20171114215424.32214-2-riel@redhat.com> <2e83dd3f-8f03-03ac-45e0-f2fae1d17013@gmail.com> <1510756981.21121.291.camel@redhat.com> From: Quan Xu Message-ID: Date: Thu, 16 Nov 2017 10:50:32 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <1510756981.21121.291.camel@redhat.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2017-11-15 22:43, Rik van Riel wrote: > Can you explain why you believe that? for example, a vcpu thread is running in kvm mode under cretical condition to stop. QEMU send an IPI to cause a VM-exit to happen immediately, and this IPI doesn't make vcpu return to QEMU. IIUC this vcpu thread will still continue to run in kvm mode when is waked up at targer machine. with your patch, I don't see a chance to load guest FPU or XSTATE, until return to QEMU and run kvm mode again. then the FPU or XSTATE status is inconsistent for a small window, what's even worse is that the vcpu is running. Did I misunderstand? Quan Alibaba Cloud > Getting the guest FPU or XSTATE is done under the vcpu->mutex. > > This patch switches out guest and userspace FPU/XSTATE under the > vcpu->mutex, and switches it back before releasing the vcpu->mutex. > > By the time a KVM_GET_FPU has obtained the vcpu->mutex, the guest > FPU state will be in vcpu->arch.guest_fpu.state, where you expect > it to be. > > What am I missing? > From 1584151822207231380@xxx Wed Nov 15 16:55:06 +0000 2017 X-GM-THRID: 1584017174910331026 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread