Received: by 2002:a05:6a10:d5a5:0:0:0:0 with SMTP id gn37csp1713043pxb; Thu, 7 Oct 2021 13:31:25 -0700 (PDT) X-Google-Smtp-Source: ABdhPJynDgHcyq9AAgPgLjUw4+vYr+KshvMeYakglKyJpf68rJq5UWXwVMjTidocpnD5907et7q/ X-Received: by 2002:a05:6402:5194:: with SMTP id q20mr9099818edd.245.1633638684909; Thu, 07 Oct 2021 13:31:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633638684; cv=none; d=google.com; s=arc-20160816; b=XSD7dwDvwe4V3BTRLiD71+sKhCGvWvVecHAUmVwnqkUG7OWTTBeyjjZ28hopNQQwCH E61Foef3LVkUSVSzKUdCrHNiSxxDMR0jjNKrwJEU4qV5EVnKg0JWWY04Z/guvYZdnNUo 9PgtDxeO3u2F225iUVORuqcbTp9UfLeoEDXjrnyOij5aGeUvi1ebfBxY0rv56ch1ygnu mq1+D6WAXg8sMAswL+ZUc8Rg4Zkm42cguagmsSUPAnP8mfvj1gTfeyhROMiCBld2JIMG agMY1OWUvIwj/ewETnjEHapx582Lb+1uPTkfM2a6naqEGcCVFjE+oWfiNeyOyYXEiMgS UV1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :message-id:subject:cc:to:from:date:dkim-signature; bh=fZzqf81E6klSb0/+SZw/PctgFAJlrIwQm3U28FQvWaA=; b=SQC3I996/wlWlSkz13+7S0V+GnaQVTc18knBQ5cHdWYV02QFT+B/UNMhUvSTEi7LMd pHjd8Bdt9w2xl5uyIxaKHUZyDu758YJyL+ztX2KcdZ1O//VdiM2FI+JDECHGv+hiLPQZ B3fPVLdjL1+KrnyxtRyn27wjfNCBfgkq0atN4rtHcmgOHMMU9P1uVBPW8pblsXwiiWkv +GQc3/WYqWBAUeyiRzTJkd0irO5xO2xpUAb5xv/31MPxMtwrQ+5+7frFBcO01V/y2w0o zP/4K0R5xLnLUPV1o8toIzLnsU4QrrUdopPUhfInCz/+bHdlcIiIO9Q++BQWiVGltGS9 KgXQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="JZ6/vUvg"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id jr2si464132ejb.201.2021.10.07.13.31.00; Thu, 07 Oct 2021 13:31:24 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="JZ6/vUvg"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233980AbhJGU3e (ORCPT + 99 others); Thu, 7 Oct 2021 16:29:34 -0400 Received: from mail.kernel.org ([198.145.29.99]:52772 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233343AbhJGU3c (ORCPT ); Thu, 7 Oct 2021 16:29:32 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8718D6103B; Thu, 7 Oct 2021 20:27:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1633638458; bh=pJi40OGK3MkHOENwvfDUfya08Gu+S7hACOu/Sbximq0=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=JZ6/vUvg6nj57OfAP312vFHJIgtLc1DRkaWq0Q3WnGV+EtYU9B7fRxRM3WmvUF01U 9skzxha+SqWQmNq1hzr0kfbDlcvu0ktz4MoPs0DGBOOUt7CX+EB/vJEb7x4B41xK6a kiJveskpVJaG1v13leiC0ezaqcSHkO4XG5aQt1U1XtmUGEL6NT6YKBQKqjTpCpTlet ovc9pYUas1sMT2/RfHMneI+QpJEP1r8kTtH8WrUNLwv6dk8F82axjFv9Ed1blCUuks LjAoYJjp8mDFQKaFD6p9fytyO0qBjlGf3E7cbIL4y7oak//amMenKMrG8tW4Ve5A9F YGQrokJj+hivg== Date: Thu, 7 Oct 2021 15:27:37 -0500 From: Bjorn Helgaas To: Daniel Walker Cc: Andrew Morton , Suneel Garapati , Chandrakala Chavva , Sunil Kovvuri Goutham , Bjorn Helgaas , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH-RFC] drivers: pci: pcieport: Allow AER service only on root ports Message-ID: <20211007202737.GA1263785@bhelgaas> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20211007194409.3641467-1-danielwa@cisco.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Please note "git log --oneline drivers/pci/pcie/portdrv_core.c" and make your patch follow the style. On Thu, Oct 07, 2021 at 12:44:09PM -0700, Daniel Walker wrote: > From: Suneel Garapati > > Some AER interrupt capability registers may not be present on > non Root ports. Since there is no way to check presence of > ROOT_ERR_COMMAND and ROOT_ERR_STATUS registers. Allow AER > service only on root ports. > Otherwise AER interrupt message number is read incorrectly > causing MSIX vector registration to fail and fallback to legacy > unnecessarily. Wrap to fill 75 columns. Add blank lines between paragraphs. Use complete sentences ("Since there is ..." is not a sentence). Capitalize consistently ("Root ports" vs "root ports"). Use register names I can find in the spec or with grep ("ROOT_ERR_COMMAND" and "ROOT_ERR_STATUS" do not appear in the source). s/MSIX/MSI-X/ to match spec usage. Also applies to code comment below. > Signed-off-by: Suneel Garapati Needs to include your (Daniel's) Signed-off-by; see: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?id=v5.14#n365 > Reviewed-by: Chandrakala Chavva > Reviewed-by: Sunil Kovvuri Goutham > --- > drivers/pci/pcie/portdrv_core.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/pci/pcie/portdrv_core.c b/drivers/pci/pcie/portdrv_core.c > index 3ee63968deaa..edc355971a32 100644 > --- a/drivers/pci/pcie/portdrv_core.c > +++ b/drivers/pci/pcie/portdrv_core.c > @@ -221,7 +221,16 @@ static int get_port_device_capability(struct pci_dev *dev) > } > > #ifdef CONFIG_PCIEAER > + /* > + * Some AER interrupt capability registers may not be present on > + * non Root ports. Since there is no way to check presence of > + * ROOT_ERR_COMMAND and ROOT_ERR_STATUS registers. Allow AER > + * service only on root ports. Refer PCIe rev5.0 spec v1.0 7.8.4. Sec 7.8.4 talks about Root Ports and Root Complex Event Collectors together, so I would think you would treat them the same here. > + * Otherwise AER interrupt message number is read incorrectly > + * causing MSIX vector registration to fail and fallback to legacy. > + */ > if (dev->aer_cap && pci_aer_available() && > + pci_pcie_type(dev) == PCI_EXP_TYPE_ROOT_PORT && > (pcie_ports_native || host->native_aer)) { > services |= PCIE_PORT_SERVICE_AER; > > -- > 2.25.1 >