From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from COL004-OMC2S2.hotmail.com (col004-omc2s2.hotmail.com [65.55.34.76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 1A36A1A1E04 for ; Fri, 12 Aug 2016 19:53:13 -0700 (PDT) Received: from EUR01-VE1-obe.outbound.protection.outlook.com ([65.55.34.72]) by COL004-OMC2S2.hotmail.com over TLS secured channel with Microsoft SMTPSVC(7.5.7601.23008); Fri, 12 Aug 2016 19:53:12 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=tSRIVQC/LWHkt3Wyv5PSLOAwGQGg6WeNMBw2ZSoQDBg=; b=b2NjBhb9xgdP7URPzOwHTw6++Knhsv5uzfqiS7CTyTP3ghUKeE9Z9xy8bs6aPd7Xn3onECmalzm4gnY1h3HrSf1EwXsb/xWwU0n+b4Dkd3rFAAjpBuFSgIr351RpDqTBF7HotR6/6XofKs+kYfb8XLaJfB73ScLAZw35L55ZvKyS1nuCftTURkQn3WnNeUnBRKgM5yUOicqD+jYSzZO26KiTjGGdmNM+H8SagGlFY0whuRfvsVDlF7bwNDHLTnLHjmgwdLy8MZVbCxBo1Q0tzY3xD2oabuDyCt5AsmGS2Y06aCLteRSn4aj1mPYtAjXnRVhPbqFBBg8SS9McVIRX1w== Received: from DB5EUR01FT026.eop-EUR01.prod.protection.outlook.com (10.152.4.59) by DB5EUR01HT055.eop-EUR01.prod.protection.outlook.com (10.152.5.142) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.567.7; Sat, 13 Aug 2016 02:53:10 +0000 Received: from VI1PR06MB1792.eurprd06.prod.outlook.com (10.152.4.51) by DB5EUR01FT026.mail.protection.outlook.com (10.152.5.2) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.567.7 via Frontend Transport; Sat, 13 Aug 2016 02:53:09 +0000 Received: from VI1PR06MB1792.eurprd06.prod.outlook.com ([10.165.237.146]) by VI1PR06MB1792.eurprd06.prod.outlook.com ([10.165.237.146]) with mapi id 15.01.0549.026; Sat, 13 Aug 2016 02:53:08 +0000 From: Marvin H?user To: "edk2-devel@lists.01.org" CC: "afish@apple.com" Thread-Topic: [edk2] [MdeModulePkg/PeiCore] How is Data being NULL on entry ensured? Thread-Index: AdH1BdSpJ+9du7JZRbSQtflX5i7n1QAByxOAAAApcHA= Date: Sat, 13 Aug 2016 02:53:08 +0000 Message-ID: References: <2E6F056D-46C2-4B3F-AC41-F4EE47D339C5@apple.com> In-Reply-To: <2E6F056D-46C2-4B3F-AC41-F4EE47D339C5@apple.com> Accept-Language: de-DE, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=softfail (sender IP is 10.152.4.51) smtp.mailfrom=outlook.com; lists.01.org; dkim=none (message not signed) header.d=none;lists.01.org; dmarc=fail action=none header.from=outlook.com; received-spf: SoftFail (protection.outlook.com: domain of transitioning outlook.com discourages use of 10.152.4.51 as permitted sender) x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [cPIVgvZfD4tWGm/0oVkkMPGEZTZ2DANU8NgFk4BbWU6C51dpugqCyP8nz2lzkxiO] x-eopattributedmessage: 0 x-forefront-antispam-report: CIP:10.152.4.51; IPV:NLI; CTRY:; EFV:NLI; SFV:NSPM; SFS:(10019020)(98900003); DIR:OUT; SFP:1102; SCL:1; SRVR:DB5EUR01HT055; H:VI1PR06MB1792.eurprd06.prod.outlook.com; FPR:; SPF:None; LANG:en; x-microsoft-exchange-diagnostics: 1; DB5EUR01HT055; 6:0bTlMUwDqJovyVTknjvdvLAD9WoU6ogacuc2Q2CDTWj/TC7e1CedzgEVNoaTMs/k29YeYOqotaN4VRo1CPtoSTWaE8+paMEgVlPFjsLwfXR0CDY4R3R3A4R8EqJbJ8zEn/PmMnQnCE+GWgVxU0JAaGNYFADvHWBDJwKzAj2obR9yUWo5XXo5Q8D2dLNVakjz1Wnb+Sy8FhNMy1Acivfhqtuq3T9j9pPCC4GDU5PVikIxpozLtiIiyFnhokr/wrAtRz54Z6Ay6MDnAyAgYJ3S4jDmanxS7j+UiPhfOvRwrg43v6AGwQq2aFUEsz0tdLJY; 5:5HweWgwZ4hE7a+WquCclN29pI19Il0MbIRhwG0tMlqd8rN7nkq3xetCr60z8pZ5VoTDswCqEyAP4mWXTBb0cEoMuMn7XTvM7xjiQiZis0k299FqqJYMmyNMLUf08UaDYF5O/xf/vaNcT+wcYZDzHZg==; 24:MNUQEi3ZZfZoMlBwjgHnvrE0j+x6Cl76GQwfYW5pLF7aLSWvnJs2Nrh31cVOthTe6BJ4aU7YDBn7jzn6QWwniY5T8UBuEgTHdAF/E3Codco=; 7:QyUhhXyu6YyHIBdvJe6jbladlfQxegzKM2QQTPyQD2ufYQRi0vj3G9vIh49j5QRgYJb5HqUidVWGLjLB+jMdG92DrQyPEmArvphWW/4kRcvPSs3yHpfnTNRJjqupJOzzwnfPToeHj8CFVBv4DId7JnUdpKTEeVDmKx56fLoKliwjdW+OYHsrz2GPUuDhL2GFo5ACU9IlmlYhuTSpfodvrRiY/A5Igup8kvOJrsFikon63WkQjVpPNrMVWNwCktK2 x-ms-office365-filtering-correlation-id: 6259d2c4-b6f8-459d-c85a-08d3c324f4f4 x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(1601125047); SRVR:DB5EUR01HT055; x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(432015012)(82015046); SRVR:DB5EUR01HT055; BCL:0; PCL:0; RULEID:; SRVR:DB5EUR01HT055; x-forefront-prvs: 0033AAD26D spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Aug 2016 02:53:08.2011 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5EUR01HT055 X-OriginalArrivalTime: 13 Aug 2016 02:53:12.0903 (UTC) FILETIME=[D5192570:01D1F50D] Subject: Re: [MdeModulePkg/PeiCore] How is Data being NULL on entry ensured? X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Aug 2016 02:53:13 -0000 Content-Language: de-DE Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hey Andrew, Thank you very much! I suppose I was misguided by the ENTRY_POINT property = being PeiCore in the build file. Regards, Marvin. > -----Original Message----- > From: afish@apple.com [mailto:afish@apple.com] > Sent: Saturday, August 13, 2016 4:47 AM > To: Marvin H?user > Cc: edk2-devel@lists.01.org > Subject: Re: [edk2] [MdeModulePkg/PeiCore] How is Data being NULL on > entry ensured? >=20 >=20 > > On Aug 12, 2016, at 7:01 PM, Marvin H?user > wrote: > > > > Dear list subscribers, > > > > I have just been looking around the PeiCore code and wondered, how it i= s > ensured, that the third ("Data") argument of the entry point is NULL on t= he > first run. > > EFI_PEI_CORE_ENTRY_POINT only has two arguments and hence most SEC > implementations, including MdeModulePkg/SecCore, are going to pass only > the first two arguments to the entry point. > > I'm aware that the code works and I have never seen an occasion of it > failing or seeming to fail because of this design, though I wondered, how= is it > assured, that the third argument, which is not part of the first call, is= being > NULL on entry and not some leftover on the temporary stack/in the > argument 3 register? > > >=20 > Marvin, >=20 > The code you are looking for is in the entry point library. >=20 > https://github.com/tianocore/edk2/blob/master/MdePkg/Library/PeiCoreE > ntryPoint/PeiCoreEntryPoint.c#L59 >=20 > **/ > VOID > EFIAPI > _ModuleEntryPoint( > IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData, > IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList > ) > { > ProcessModuleEntryPointList (SecCoreData, PpiList, NULL); >=20 > // > // Should never return > // > ASSERT(FALSE); > CpuDeadLoop (); > } >=20 >=20 > ProcessModuleEntryPointList() call is auto-generated and it will cal the = entry > point listed in the PEI Core INF file. So that is why it is hard to grep = for. >=20 > Thanks, >=20 > Andrew Fish >=20 > > Thank you for your time! > > > > Regards, > > Marvin. > > _______________________________________________ > > edk2-devel mailing list > > edk2-devel@lists.01.org > > https://lists.01.org/mailman/listinfo/edk2-devel