Received: by 10.192.165.148 with SMTP id m20csp5379imm; Thu, 26 Apr 2018 14:50:36 -0700 (PDT) X-Google-Smtp-Source: AB8JxZpqh6SM9Z4j8d5YVHrAUp7KDEF2pWhWIeGoAEMvCugzY47wWkW4BWxy5PCpsmq6rlpH94ir X-Received: by 2002:a17:902:5502:: with SMTP id f2-v6mr10880041pli.108.1524779436635; Thu, 26 Apr 2018 14:50:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524779436; cv=none; d=google.com; s=arc-20160816; b=wdE0hvpmk31phhucVC6Narwinw+ZyD9Tt65S32I3pWqlaIB87koHImipDfk6aLx/3C aJS5KLASsfr/k/xd73zny8RR8CKsfxFz/t4BbH0TRQynbzBwKGPzhGOL/YvWgHnKRDk+ AAsEEkxFxFFZIzUu9qj3OCYASpzFFiUbR8yhkKMWP6PGxbHXGab3VsxeTIood3IYK1cP jWz2FMlMPm4D9tdhily0bige7IMFWsAnnmroBEoTpTiIETY57le9Z0X8SKJwF+hE2VVb +BLG5to9theBzRg4DhDifdQAtgYt0NxY3ppvBDTKVsVz6bKXNiwljj8SJitYgzUFtwzs H0aQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :message-id:in-reply-to:subject:cc:to:from:date :arc-authentication-results; bh=cz1+UCr6oViidDpmgGAr7Arj2Kstrmrd8cM2Wd3C62w=; b=StENwGTon0V7oXvhGN3ekRj49kRulOLZIl7WOmbLALm00MLO/U+o3JYY+bTsv96vrZ eC1AR4TTVQ+5WXmUmHPdtNfXEZDeC6sa17XdGrPn9t2dzRmfOuVLysvVgTl4XfgpzFLC htPaxCPG1X1IM4nafTVkQzhAFc0PZXuCheMdUA1qsJtrMZ1iss5/LYnThUQA+BZmP5py 1cYwozwFbwXoum6VjJiU3LpXphc0gN3RIF6SuH1BzsGmphCRLxWq53A1v8uLCz8vBIHx exFVuUK+6Hfl4w9GPQlk+6TJ0mtW4tgtpSyyPXm7splOLIAyg5HBJNuccd6Vxyxj9xjl 4WuA== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h10si16516474pgn.30.2018.04.26.14.50.22; Thu, 26 Apr 2018 14:50:36 -0700 (PDT) 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755540AbeDZVtN (ORCPT + 99 others); Thu, 26 Apr 2018 17:49:13 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:50389 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754166AbeDZVtM (ORCPT ); Thu, 26 Apr 2018 17:49:12 -0400 Received: from p5492e61e.dip0.t-ipconnect.de ([84.146.230.30] helo=nanos.glx-home) by Galois.linutronix.de with esmtpsa (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from ) id 1fBolI-0004Uw-NV; Thu, 26 Apr 2018 23:49:08 +0200 Date: Thu, 26 Apr 2018 23:49:08 +0200 (CEST) From: Thomas Gleixner To: "K. Y. Srinivasan" cc: x86@kernel.org, gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, devel@linuxdriverproject.org, olaf@aepfle.de, apw@canonical.com, jasowang@redhat.com, hpa@zytor.com, sthemmin@microsoft.com, Michael.H.Kelley@microsoft.com, vkuznets@redhat.com Subject: Re: [PATCH 1/5] X86: Hyper-V: Enlighten APIC access In-Reply-To: <20180425181250.8740-1-kys@linuxonhyperv.com> Message-ID: References: <20180425181110.8683-1-kys@linuxonhyperv.com> <20180425181250.8740-1-kys@linuxonhyperv.com> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Linutronix-Spam-Score: -1.0 X-Linutronix-Spam-Level: - X-Linutronix-Spam-Status: No , -1.0 points, 5.0 required, ALL_TRUSTED=-1,SHORTCIRCUIT=-0.0001 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 25 Apr 2018, kys@linuxonhyperv.com wrote: > --- /dev/null > +++ b/arch/x86/hyperv/hv_apic.c > @@ -0,0 +1,98 @@ > +// SPDX-License-Identifier: GPL-2.0 Thanks for putting the license identifier in. > + > +/* > + * Hyper-V specific APIC code. > + * > + * Copyright (C) 2018, Microsoft, Inc. > + * > + * Author : K. Y. Srinivasan But can you please check with your lawyers whether you can avoid the pointless boilerplate? The SPDX identifier should cover it. > + * This program is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License version 2 as published > + * by the Free Software Foundation. > + * > + * This program is distributed in the hope that it will be useful, but > + * WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or > + * NON INFRINGEMENT. See the GNU General Public License for more > + * details. > + * > + */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include We usually order the includes #include ... #include #include #include > -void hyperv_init(void); > +void __init hyperv_init(void); > void hyperv_setup_mmu_ops(void); > void hyper_alloc_mmu(void); > void hyperv_report_panic(struct pt_regs *regs, long err); > @@ -269,14 +269,16 @@ void hyperv_reenlightenment_intr(struct pt_regs *regs); > void set_hv_tscchange_cb(void (*cb)(void)); > void clear_hv_tscchange_cb(void); > void hyperv_stop_tsc_emulation(void); > +void hv_apic_init(void); > #else /* CONFIG_HYPERV */ > -static inline void hyperv_init(void) {} > +static __init inline void hyperv_init(void) {} The __init on the empty inline function is pointless. Other than the few nits. This looks well done! Thanks, tglx