Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp7602928ybl; Thu, 16 Jan 2020 02:27:26 -0800 (PST) X-Google-Smtp-Source: APXvYqzexadCSfAVYHq17O+nD2fmxtfmfI+sCJP7vz+08fsoqhELqL+2NpRulI900mv2RvgGclkl X-Received: by 2002:aca:1204:: with SMTP id 4mr3540822ois.143.1579170446014; Thu, 16 Jan 2020 02:27:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1579170446; cv=none; d=google.com; s=arc-20160816; b=hgYLh3ahYbXsMAJ0eKjqLjS3RSVK/gUAjW03ZJidmd1nvasCfDndRX5nkCsRJwr7OR TjgYzZsNhh3rH0xwVjOSx0t8Yur7+BV9DGB2GFlpL6FUa1v/3tLlSeKUifsiG/B5JMnN 1d3gJ5jeVVN7sCdtmEwPyMHR8a9sJR27ZHRPwhnjeYeN00PullVckfotvDQQAOsLCsA3 Y8bgaTc2eYATSCeOsur4FDlXpqNFPQXQdlAslSdlpcOIy/orLmuy+N7qO2Gectc+th// 2YOv2DCnrsHUVaNYkSCC7qHk4U9T5aqJPtJr7MYltBjbM/AngsiiymXlvo7XCzLBRGoI v0bg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:organization:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=J9ZUrlu2QlORFgpyHA7AyV6QpL0N5O4IZvP70yML3pk=; b=Jm6jH144QftjHqxbk3s44xjeYEu+aBJRRTCOGX05FnOqYiF+ynjEFr43+n5G5dWOmP rG+rxTIwAujXzfnZasY6mSenSOvKQOORsV7Z9a27G2FTbAWAwkSI8EbC4MEAKgroe9o3 Vbu6rP9NYq1zBBgcZC2k8E9oz2YlD3cW/kPHQgKi1zQCNPKEopxFsjACJsezRpvs54Cu Ci9QMpX7Vgkb4gHD7wWEWzoFCXJZVvrkKTqp1aoEHdCdX3Ryw+WObgLSYuL7oA82ojZX 2FU6+vPMtszcQ7VIR+tF+V3pKtLOgLPmDQeIzn105/iI2GBE1M9i1WUOQg1gw5M8z1wJ mnTg== 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=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d5si11207243oij.139.2020.01.16.02.27.14; Thu, 16 Jan 2020 02:27:26 -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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726741AbgAPKXE (ORCPT + 99 others); Thu, 16 Jan 2020 05:23:04 -0500 Received: from mga12.intel.com ([192.55.52.136]:3718 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726220AbgAPKXE (ORCPT ); Thu, 16 Jan 2020 05:23:04 -0500 X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 16 Jan 2020 02:23:04 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,325,1574150400"; d="scan'208";a="257781971" Received: from lahna.fi.intel.com (HELO lahna) ([10.237.72.163]) by fmsmga001.fm.intel.com with SMTP; 16 Jan 2020 02:23:01 -0800 Received: by lahna (sSMTP sendmail emulation); Thu, 16 Jan 2020 12:23:00 +0200 Date: Thu, 16 Jan 2020 12:23:00 +0200 From: Mika Westerberg To: Nicholas Johnson Cc: "linux-kernel@vger.kernel.org" , "linux-pci@vger.kernel.org" , Bjorn Helgaas , Benjamin Herrenschmidt , Logan Gunthorpe Subject: Re: [PATCH v2 4/4] PCI: Allow extend_bridge_window() to shrink resource if necessary Message-ID: <20200116102300.GY2838@lahna.fi.intel.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jan 15, 2020 at 05:58:05PM +0000, Nicholas Johnson wrote: > Remove checks for resource size in extend_bridge_window(). This is > necessary to allow the pci_bus_distribute_available_resources() to > function when the kernel parameter pci=hpmemsize=nn[KMG] is used to > allocate resources. Because the kernel parameter sets the size of all > hotplug bridges to be the same, there are problems when nested hotplug > bridges are encountered. Fitting a downstream hotplug bridge with size X > and normal bridges with non-zero size Y into parent hotplug bridge with > size X is impossible, and hence the downstream hotplug bridge needs to > shrink to fit into its parent. > > Add check for if bridge is extended or shrunken and reflect that in the > call to pci_dbg(). > > Do not change resource size if new size is zero (if we have run out of a > bridge window resource) to prevent the PCI resource assignment code from > attempting to assign a zero-sized resource. If this happens, we are > running out of resource space, anyway, so not shrinking the resource > will not deny space for other resources. This prevents the following > from happening: > > pcieport 0000:07:04.0: can't enable device: BAR 13 [io 0x1000-0x0fff] not claimed > > Signed-off-by: Nicholas Johnson Reviewed-by: Mika Westerberg