Received: by 2002:ac0:aed5:0:0:0:0:0 with SMTP id t21csp3329963imb; Tue, 5 Mar 2019 06:49:46 -0800 (PST) X-Google-Smtp-Source: APXvYqzvquMEDz5dsnw4aeTr2QD+KOSpGJVjIzwVKGDatW5XtCq7hpDqKcgkzNrnhDiDLrgUqhnw X-Received: by 2002:a62:2f81:: with SMTP id v123mr2170310pfv.156.1551797386359; Tue, 05 Mar 2019 06:49:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1551797386; cv=none; d=google.com; s=arc-20160816; b=v2guDGRcgG9E4KtossYKNP2XPVTOzahI+UA0d+IhSwTgL0PynA4TWqRRg75j+dcKMH 4Jm8mV7e/8zSKh63gNKETXIT6u/ZZQ0hkn3ESX0qvaLK58K77ujXVSNG2aMde9sdgHR6 hfrWtnzpDWgmXIgCd37EHcGqs18dUVeUwklBBK18GO8xnmWA06jcyWC9OfejZDUFTZ1U Tw1l6bBTJBkuFMIk1pxKOCCR0nEWe5qsJgihG5bviE+Nq908505qoajbw7vqSakitFS9 u9wn/C7V7/61aB58y9+Jlx+bcDiSvODa0P+3zVBL3Rvsj8uS/5fk7O7/ydBQ1fk7Wfxd ARcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version; bh=h1HuBxsxpVtJ+RVyOZrjsj4BRmjBSB53lrOmIhikXCQ=; b=dszex3UI7qlW6mKzt7VBK6IGhltoftX5G3/huoyPtGLpq+W44CKLHAdZOl8w/nfQGN DwOiHNn+8Eah6XzuBCteeBA9V+rr7GtUoYcddAjLjm/zcha893BLt6skqN+tLnZ7tMUF LdoVqmMiVIPxWeWcYLUCeOvFnlqTvLcxB2qjVqbGxwoSh/P1mtb+9cJPxd240DG0E2Wq +Bj7YOtIoojo2PIPUwS1xLF6c9EnNAFnG65ZGgYSJ4i0XaEuKZXqopfbygLBxiG1DwhW 1IidEQC3YJN5IKd04pwetIzM5Qhqqdq4soHomaJIXQt0OCSM9nCS74LoGNBQWZZmHhC1 KbVw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c197si8175083pga.494.2019.03.05.06.49.31; Tue, 05 Mar 2019 06:49:46 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728413AbfCENeZ (ORCPT + 99 others); Tue, 5 Mar 2019 08:34:25 -0500 Received: from mail-it1-f195.google.com ([209.85.166.195]:37570 "EHLO mail-it1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727492AbfCENeZ (ORCPT ); Tue, 5 Mar 2019 08:34:25 -0500 Received: by mail-it1-f195.google.com with SMTP id z124so4451630itc.2 for ; Tue, 05 Mar 2019 05:34:24 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=h1HuBxsxpVtJ+RVyOZrjsj4BRmjBSB53lrOmIhikXCQ=; b=mMZesd4WnJu/58mUFBiI0gbEbK07XUS/kJKClycfl8GL4I3ixVR3jy8mF91vCKLYbO jF77gArVPuQ3drzgf3PciUhS94TDCkciqLR8VlpBdglxD/683HTlhvOnFbpQy+Orn9Vo 8R4Qv82STbASOdSPm8eubVWhCB0w6/XS/pSHKLyYI5Rv4uHjizbHgNNN/duix5kqrMpU 14v5TS2xaQmABAlB+0kTRH0cYG62nqShEncDWzYC4fVc9JQnS/XNmtBl0bKfm4ZE+Eb+ wTrAYEY65Z1U5pMj/WK9uWOpH4d7G09pcJvzZzzL/QMY+MnkNgb+LATIaFsLolW03Rvy 4F6g== X-Gm-Message-State: APjAAAWNyf8C/YaZgCOlScU8YjFzkWKn4wyvJoQQuLcK0FmhN/vB0b2J dCMqZEQL7T5B8nJph8dJGpxFV8mDP7Yk6jpTK5dieA== X-Received: by 2002:a24:73c5:: with SMTP id y188mr2653344itb.147.1551792864344; Tue, 05 Mar 2019 05:34:24 -0800 (PST) MIME-Version: 1.0 References: <20190305121703.29769-1-kasong@redhat.com> <20190305123329.GK32477@hirez.programming.kicks-ass.net> In-Reply-To: <20190305123329.GK32477@hirez.programming.kicks-ass.net> From: Kairui Song Date: Tue, 5 Mar 2019 21:34:13 +0800 Message-ID: Subject: Re: [PATCH v2] x86, hyperv: fix kernel panic when kexec on HyperV To: Peter Zijlstra Cc: Linux Kernel Mailing List , "K. Y. Srinivasan" , Haiyang Zhang , Stephen Hemminger , Sasha Levin , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Vitaly Kuznetsov , Dave Young , "the arch/x86 maintainers" , devel@linuxdriverproject.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 5, 2019 at 8:33 PM Peter Zijlstra wrote: > > On Tue, Mar 05, 2019 at 08:17:03PM +0800, Kairui Song wrote: > > diff --git a/arch/x86/hyperv/hv_init.c b/arch/x86/hyperv/hv_init.c > > index 7abb09e2eeb8..34aa1e953dfc 100644 > > --- a/arch/x86/hyperv/hv_init.c > > +++ b/arch/x86/hyperv/hv_init.c > > @@ -406,6 +406,12 @@ void hyperv_cleanup(void) > > /* Reset our OS id */ > > wrmsrl(HV_X64_MSR_GUEST_OS_ID, 0); > > > > + /* Cleanup hypercall page reference before reset the page */ > > + hv_hypercall_pg = NULL; > > + > > + /* Make sure page reference is cleared before wrmsr */ > > This comment forgets to tell us who cares about this. And why the wrmsr > itself isn't serializing enough. > > > + wmb(); > > + > > /* Reset the hypercall page */ > > hypercall_msr.as_uint64 = 0; > > wrmsrl(HV_X64_MSR_HYPERCALL, hypercall_msr.as_uint64); > > That looks like a fake MSR; and you're telling me that VMEXIT doesn't > serialize? Thanks for the review, seem I being a bit paranoid on this. Will drop it and send a v3 if no one has any other complaint. -- Best Regards, Kairui Song