From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web10.4936.1581517037986988714 for ; Wed, 12 Feb 2020 06:17:18 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: liming.gao@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 12 Feb 2020 06:17:17 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,433,1574150400"; d="scan'208";a="313414272" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by orsmga001.jf.intel.com with ESMTP; 12 Feb 2020 06:17:16 -0800 Received: from shsmsx603.ccr.corp.intel.com (10.109.6.143) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 12 Feb 2020 06:17:06 -0800 Received: from shsmsx606.ccr.corp.intel.com (10.109.6.216) by SHSMSX603.ccr.corp.intel.com (10.109.6.143) 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 22:17:04 +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 22:17:04 +0800 From: "Liming Gao" To: "afish@apple.com" , "devel@edk2.groups.io" Subject: Re: [edk2-devel] PCD Migration issue Thread-Topic: [edk2-devel] PCD Migration issue Thread-Index: AQHV4Dkp3BZBHnp++EefCSNjFuRLnqgW7Ksw//+mJgCAAQb/YA== Date: Wed, 12 Feb 2020 14:17:04 +0000 Message-ID: <06653afb741a4885878e5ceec50b0f79@intel.com> References: <6D19BFCB-B1F3-415E-9DDA-23992E98B637@apple.com> <882c2df7f2c74859ba2d96031a9faf8c@intel.com> <212C86E2-A4B9-4B23-8280-0A3F871E206C@apple.com> In-Reply-To: <212C86E2-A4B9-4B23-8280-0A3F871E206C@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: For the work model with old PEI and new DXE, besides Dynamic PCD, there = may be Hob or Variable issue. This is a complex topic to make sure the mism= atch PEI and DXE work together. Thanks Liming > -----Original Message----- > From: afish@apple.com > Sent: Wednesday, February 12, 2020 2:22 PM > To: devel@edk2.groups.io; Gao, Liming > Subject: Re: [edk2-devel] PCD Migration issue >=20 > Liming, >=20 > I agree I don't think this has been thought about. >=20 > Does the edk2 still support booting a split PEI from ROM and DXE from ca= psule for update? If yes that seems to imply the assumption is > that platform would not change any Dynamic PCD layout, or update the PCD= database versions. If you have a platform in a common core > base, and update the EDK2 code to pick up security fixes it seems the PC= D data base implies you have to freeze Dynamic PCD usage in > your common core? >=20 > Thanks, >=20 > Andrew Fish >=20 > > On Feb 11, 2020, at 7:54 PM, Liming Gao wrote: > > > > Andrew: > > Current implementation requires PEI PcdDB and DXE PcdDB match. This i= s like a new request for PCD DataBase. It requests PCD DB > binary format and Dynamic PCD token assignment be compatible in the diff= erent version. > > > > Thanks > > Liming > >> -----Original Message----- > >> From: devel@edk2.groups.io On Behalf Of Andrew= Fish via Groups.Io > >> Sent: Tuesday, February 11, 2020 1:39 AM > >> To: devel@edk2.groups.io > >> Subject: [edk2-devel] PCD Migration issue > >> > >> We recently hit an issue when updating our UDK version in our common = code base. Our recovery update path started failing for older > >> platforms since the PEI was the old UDK version and the DXE from the = Capsule 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= about making sure the build systems matches the code vs. > dealing > >> with an update case like we hit. > >> > >> 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 = entries that got set in PEI that are needed by DXE. > >> > >> In the future it would be helpful if the PCD database would change in= some what of a backward compatible way, and have the > headers > >> needed to parse the old and new version. > >> > >> It also seems like adding a Dynamic PCD could potentially change the = token layout and thus break compatibility? Is there any scheme > to > >> keep a previous token layout? > >> > >> Thanks, > >> > >> Andrew Fish > >> > > > > > >=20 > >