From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web10.21821.1581479655837216955 for ; Tue, 11 Feb 2020 19:54:16 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: liming.gao@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 11 Feb 2020 19:54:15 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,428,1574150400"; d="scan'208";a="256691044" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga004.fm.intel.com with ESMTP; 11 Feb 2020 19:54:15 -0800 Received: from shsmsx602.ccr.corp.intel.com (10.109.6.142) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 11 Feb 2020 19:54:14 -0800 Received: from shsmsx606.ccr.corp.intel.com (10.109.6.216) by SHSMSX602.ccr.corp.intel.com (10.109.6.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Wed, 12 Feb 2020 11:54:13 +0800 Received: from shsmsx606.ccr.corp.intel.com ([10.109.6.216]) by SHSMSX606.ccr.corp.intel.com ([10.109.6.216]) with mapi id 15.01.1713.004; Wed, 12 Feb 2020 11:54:13 +0800 From: "Liming Gao" To: "devel@edk2.groups.io" , "afish@apple.com" Subject: Re: [edk2-devel] PCD Migration issue Thread-Topic: [edk2-devel] PCD Migration issue Thread-Index: AQHV4Dkp3BZBHnp++EefCSNjFuRLnqgW7Ksw Date: Wed, 12 Feb 2020 03:54:13 +0000 Message-ID: <882c2df7f2c74859ba2d96031a9faf8c@intel.com> References: <6D19BFCB-B1F3-415E-9DDA-23992E98B637@apple.com> In-Reply-To: <6D19BFCB-B1F3-415E-9DDA-23992E98B637@apple.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-product: dlpe-windows dlp-reaction: no-action x-originating-ip: [10.239.127.36] MIME-Version: 1.0 Return-Path: liming.gao@intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Andrew: Current implementation requires PEI PcdDB and DXE PcdDB match. This is l= ike a new request for PCD DataBase. It requests PCD DB binary format and Dy= namic PCD token assignment be compatible in the different version. Thanks Liming > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Andrew Fi= sh via Groups.Io > Sent: Tuesday, February 11, 2020 1:39 AM > To: devel@edk2.groups.io > Subject: [edk2-devel] PCD Migration issue >=20 > We recently hit an issue when updating our UDK version in our common cod= e base. Our recovery update path started failing for older > platforms since the PEI was the old UDK version and the DXE from the Cap= sule was the new UDK version. Basically the version of the PCD > changed. It looks like there are some checks, but the seem to be more ab= out making sure the build systems matches the code vs. dealing > with an update case like we hit. >=20 > It does not look like the PCD database is designed to deal with this. We= are fixing this by extracting the PEI PCD database from the > capsule and then having some platform specific code to patch any PCD ent= ries that got set in PEI that are needed by DXE. >=20 > In the future it would be helpful if the PCD database would change in so= me what of a backward compatible way, and have the headers > needed to parse the old and new version. >=20 > It also seems like adding a Dynamic PCD could potentially change the tok= en layout and thus break compatibility? Is there any scheme to > keep a previous token layout? >=20 > Thanks, >=20 > Andrew Fish >=20