Received: by 2002:a25:c593:0:0:0:0:0 with SMTP id v141csp6082150ybe; Tue, 10 Sep 2019 13:14:18 -0700 (PDT) X-Google-Smtp-Source: APXvYqz+3IDSAaFtHmopY1FzAdXjfqpQEp+mRYrbYNfZ6NGF48ELBmUdt2k1GYM1lsA+aBMg25e4 X-Received: by 2002:a17:906:bb14:: with SMTP id jz20mr5364194ejb.218.1568146458288; Tue, 10 Sep 2019 13:14:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1568146458; cv=none; d=google.com; s=arc-20160816; b=RZB3hQ4NCZh3VHntHQZSglzHDa1zlGPb2RU9b8Ie/beum793kUKg6Ueh3ocw7HWubL 1r+sg1MgtGG3HEYwBuAORrY887dxz//uMtA6fdc0U5RUF8uu4/hCPvbxzb05qU/pNJHu WQJhP+5QtJ78KqtNhP4qtksiNSEj1BsK3E2z9ssfh46kyoIC76s9x2QcbHzM2AGNXbR0 o9Ds6WfLbbsZyS7lpZ+R7S0T/Y0tt95KAPrU9g/116o7esiFVFiS2kaslw+EW1ivKb1j Atl7qGmxw/9nNOQF88TzsJoLsVEq1HSTvJ/bdcSoijFhCcgArIBRK/FLp+7twUGkJgwb G+nQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=giVE+aJzaH/82QA7rTBqlJE4YxxMp5GvGG/WHFUGOpU=; b=maN9Jq5JnWdZD6rDOVjRJ9qMxR/S4Dr64NcNvPhGHtt+QFnAa8l+rN1ECWfTrOYkBf Yw6AFzsElcXGkRQrVkHgX13vl7HWfKNiXtgItSKwc5gWDM9svoW5WarxtL702yakUwN2 PQl89e3NKaJ0WXSjO8oMhTtLSOi7QkJSV0p1nCdQAqi1Dn/TkIB+GE8dTHqzby4TVADt qZZeShV2pv1r/oAP7Ou8TQPyC02sX4TlxiwThVokttkY6UGAt4zNQxfp2YIAyoC1phpD dTxRv10GCODEi0mNBWXmj6dprfEEyY4qSXi6d4H11UI++/yQfdyz+Ac+MvysBWnGYYhw Yozg== 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 s11si10181355eja.239.2019.09.10.13.13.08; Tue, 10 Sep 2019 13:14:18 -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 S2391662AbfIJJz4 (ORCPT + 99 others); Tue, 10 Sep 2019 05:55:56 -0400 Received: from mx2.suse.de ([195.135.220.15]:59734 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727557AbfIJJzz (ORCPT ); Tue, 10 Sep 2019 05:55:55 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 2F047AF80; Tue, 10 Sep 2019 09:55:54 +0000 (UTC) Subject: Re: [Xen-devel] [PATCH] xen/pci: try to reserve MCFG areas earlier To: Igor Druzhinin , Boris Ostrovsky , linux-kernel@vger.kernel.org Cc: xen-devel@lists.xenproject.org, Juergen Gross References: <1567556431-9809-1-git-send-email-igor.druzhinin@citrix.com> <5054ad91-5b87-652c-873a-b31758948bd7@oracle.com> <43b7da04-5c42-80d8-898b-470ee1c91ed2@oracle.com> <1695c88d-e5ad-1854-cdef-3cd95c812574@oracle.com> <4d3bf854-51de-99e4-9a40-a64c581bdd10@citrix.com> <43e492ff-f967-7218-65c4-d16581fabea3@oracle.com> <416ff4b7-3186-f61a-75fa-bcfc968f8117@citrix.com> From: Jan Beulich Message-ID: <64d52960-28d5-fb23-8892-35c9d4ed9d90@suse.com> Date: Tue, 10 Sep 2019 11:55:53 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 In-Reply-To: <416ff4b7-3186-f61a-75fa-bcfc968f8117@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 10.09.2019 11:46, Igor Druzhinin wrote: > On 10/09/2019 02:47, Boris Ostrovsky wrote: >> On 9/9/19 5:48 PM, Igor Druzhinin wrote: >>> Actually, pci_mmcfg_late_init() that's called out of acpi_init() - >>> that's where MCFG areas are properly sized. >> >> pci_mmcfg_late_init() reads the (static) MCFG, which doesn't need DSDT parsing, does it? setup_mcfg_map() OTOH does need it as it uses data from _CBA (or is it _CRS?), and I think that's why we can't parse MCFG prior to acpi_init(). So what I said above indeed won't work. >> > > No, it uses is_acpi_reserved() (it's called indirectly so might be well > hidden) to parse DSDT to find a reserved resource in it and size MCFG > area accordingly. setup_mcfg_map() is called for every root bus > discovered and indeed tries to evaluate _CBA but at this point > pci_mmcfg_late_init() has already finished MCFG registration for every > cold-plugged bus (which information is described in MCFG table) so those > calls are dummy. I don't think they're strictly dummy. Even for boot time available devices iirc there's no strict requirement for there to be respective data in MCFG. Such a requirement exists only for devices which are actually needed to start the OS (disk or network, perhaps video or alike), or maybe even just its loader. Jan