BhyvePkg/AcpiTables/AcpiTables.inf | 47 + BhyvePkg/AcpiTables/Dsdt.asl | 1134 +++++++++++ BhyvePkg/AcpiTables/Facp.aslc | 82 + BhyvePkg/AcpiTables/Facs.aslc | 84 + BhyvePkg/AcpiTables/Hpet.aslc | 78 + BhyvePkg/AcpiTables/Madt.aslc | 149 ++ BhyvePkg/AcpiTables/Mcfg.aslc | 63 + BhyvePkg/AcpiTables/Platform.h | 76 + BhyvePkg/AcpiTables/Spcr.aslc | 69 + BhyvePkg/AcpiTables/Ssdt.asl | 19 + BhyvePkg/BhyvePkg.dec | 176 ++ BhyvePkg/BhyvePkg.fdf.inc | 92 + BhyvePkg/BhyvePkgX64.dsc | 862 +++++++++ BhyvePkg/BhyvePkgX64.fdf | 529 ++++++ BhyvePkg/BhyveRfbDxe/BhyveRfbDxe.inf | 76 + BhyvePkg/BhyveRfbDxe/ComponentName.c | 205 ++ BhyvePkg/BhyveRfbDxe/Gop.h | 153 ++ BhyvePkg/BhyveRfbDxe/GopDriver.c | 548 ++++++ BhyvePkg/BhyveRfbDxe/GopScreen.c | 398 ++++ BhyvePkg/BhyveRfbDxe/VbeShim.asm | 347 ++++ BhyvePkg/BhyveRfbDxe/VbeShim.c | 263 +++ BhyvePkg/BhyveRfbDxe/VbeShim.h | 912 +++++++++ BhyvePkg/BhyveRfbDxe/VbeShim.sh | 85 + BhyvePkg/DecomprScratchEnd.fdf.inc | 72 + BhyvePkg/Include/Library/BhyveFwCtlLib.h | 52 + .../Library/BhyveFwCtlLib/BhyveFwCtlLib.c | 431 +++++ .../Library/BhyveFwCtlLib/BhyveFwCtlLib.inf | 46 + .../BhyveFwCtlLibNull/BhyveFwCtlLibNull.c | 53 + .../BhyveFwCtlLibNull/BhyveFwCtlLibNull.inf | 39 + .../PlatformBootManagerLib/BdsPlatform.c | 1665 +++++++++++++++++ .../PlatformBootManagerLib/BdsPlatform.h | 196 ++ .../PlatformBootManagerLib.inf | 79 + .../PlatformBootManagerLib/PlatformData.c | 176 ++ BhyvePkg/License.txt | 50 + BhyvePkg/SmbiosPlatformDxe/Bhyve.c | 49 + .../SmbiosPlatformDxe/SmbiosPlatformDxe.c | 250 +++ .../SmbiosPlatformDxe/SmbiosPlatformDxe.h | 69 + .../SmbiosPlatformDxe/SmbiosPlatformDxe.inf | 59 + BhyvePkg/VarStore.fdf.inc | 122 ++ OvmfPkg/AcpiPlatformDxe/AcpiPlatform.c | 8 +- OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h | 9 + OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf | 3 + .../AcpiPlatformDxe/AcpiPlatformDxeBhyve.inf | 81 + OvmfPkg/AcpiPlatformDxe/Bhyve.c | 138 ++ OvmfPkg/Include/IndustryStandard/Bhyve.h | 25 + .../Include/IndustryStandard/LegacyVgaBios.h | 39 + OvmfPkg/Include/OvmfPlatforms.h | 1 + .../AcpiTimerLib/BaseAcpiTimerLibBhyve.c | 33 + .../AcpiTimerLib/BaseAcpiTimerLibBhyve.inf | 29 + .../QemuFwCfgLibNull/QemuFwCfgPeiLibNull.inf | 36 + .../QemuFwCfgLibNull/QemuFwCfgPeiNull.c | 107 ++ .../DxeQemuFwCfgS3LibFwCfgNull.inf | 32 + .../PeiQemuFwCfgS3LibFwCfgNull.inf | 39 + .../QemuFwCfgS3BasePeiNull.c | 221 +++ .../QemuFwCfgS3LibNull/QemuFwCfgS3DxeNull.c | 307 +++ .../QemuFwCfgS3PeiDxeNull.c | 31 + .../QemuFwCfgS3LibNull/QemuFwCfgS3PeiNull.c | 80 + .../Library/ResetSystemLib/ResetSystemLib.c | 6 + OvmfPkg/OvmfPkgIa32.dsc | 1 + OvmfPkg/OvmfPkgIa32X64.dsc | 1 + OvmfPkg/OvmfPkgX64.dsc | 1 + OvmfPkg/OvmfXen.dsc | 1 + OvmfPkg/PlatformPei/MemDetectBhyve.c | 631 +++++++ OvmfPkg/PlatformPei/PlatformBhyve.c | 612 ++++++ OvmfPkg/PlatformPei/PlatformPeiBhyve.inf | 119 ++ 65 files changed, 12443 insertions(+), 3 deletions(-) create mode 100644 BhyvePkg/AcpiTables/AcpiTables.inf create mode 100644 BhyvePkg/AcpiTables/Dsdt.asl create mode 100644 BhyvePkg/AcpiTables/Facp.aslc create mode 100644 BhyvePkg/AcpiTables/Facs.aslc create mode 100644 BhyvePkg/AcpiTables/Hpet.aslc create mode 100644 BhyvePkg/AcpiTables/Madt.aslc create mode 100644 BhyvePkg/AcpiTables/Mcfg.aslc create mode 100644 BhyvePkg/AcpiTables/Platform.h create mode 100644 BhyvePkg/AcpiTables/Spcr.aslc create mode 100644 BhyvePkg/AcpiTables/Ssdt.asl create mode 100644 BhyvePkg/BhyvePkg.dec create mode 100644 BhyvePkg/BhyvePkg.fdf.inc create mode 100644 BhyvePkg/BhyvePkgX64.dsc create mode 100644 BhyvePkg/BhyvePkgX64.fdf create mode 100644 BhyvePkg/BhyveRfbDxe/BhyveRfbDxe.inf create mode 100644 BhyvePkg/BhyveRfbDxe/ComponentName.c create mode 100644 BhyvePkg/BhyveRfbDxe/Gop.h create mode 100644 BhyvePkg/BhyveRfbDxe/GopDriver.c create mode 100644 BhyvePkg/BhyveRfbDxe/GopScreen.c create mode 100644 BhyvePkg/BhyveRfbDxe/VbeShim.asm create mode 100644 BhyvePkg/BhyveRfbDxe/VbeShim.c create mode 100644 BhyvePkg/BhyveRfbDxe/VbeShim.h create mode 100644 BhyvePkg/BhyveRfbDxe/VbeShim.sh create mode 100644 BhyvePkg/DecomprScratchEnd.fdf.inc create mode 100644 BhyvePkg/Include/Library/BhyveFwCtlLib.h create mode 100644 BhyvePkg/Library/BhyveFwCtlLib/BhyveFwCtlLib.c create mode 100644 BhyvePkg/Library/BhyveFwCtlLib/BhyveFwCtlLib.inf create mode 100644 BhyvePkg/Library/BhyveFwCtlLibNull/BhyveFwCtlLibNull.c create mode 100644 BhyvePkg/Library/BhyveFwCtlLibNull/BhyveFwCtlLibNull.inf create mode 100644 BhyvePkg/Library/PlatformBootManagerLib/BdsPlatform.c create mode 100644 BhyvePkg/Library/PlatformBootManagerLib/BdsPlatform.h create mode 100644 BhyvePkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf create mode 100644 BhyvePkg/Library/PlatformBootManagerLib/PlatformData.c create mode 100644 BhyvePkg/License.txt create mode 100644 BhyvePkg/SmbiosPlatformDxe/Bhyve.c create mode 100644 BhyvePkg/SmbiosPlatformDxe/SmbiosPlatformDxe.c create mode 100644 BhyvePkg/SmbiosPlatformDxe/SmbiosPlatformDxe.h create mode 100644 BhyvePkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf create mode 100644 BhyvePkg/VarStore.fdf.inc create mode 100644 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxeBhyve.inf create mode 100644 OvmfPkg/AcpiPlatformDxe/Bhyve.c create mode 100644 OvmfPkg/Include/IndustryStandard/Bhyve.h create mode 100644 OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLibBhyve.c create mode 100644 OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLibBhyve.inf create mode 100644 OvmfPkg/Library/QemuFwCfgLibNull/QemuFwCfgPeiLibNull.inf create mode 100644 OvmfPkg/Library/QemuFwCfgLibNull/QemuFwCfgPeiNull.c create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/DxeQemuFwCfgS3LibFwCfgNull.inf create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/PeiQemuFwCfgS3LibFwCfgNull.inf create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/QemuFwCfgS3BasePeiNull.c create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/QemuFwCfgS3DxeNull.c create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/QemuFwCfgS3PeiDxeNull.c create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/QemuFwCfgS3PeiNull.c create mode 100644 OvmfPkg/PlatformPei/MemDetectBhyve.c create mode 100644 OvmfPkg/PlatformPei/PlatformBhyve.c create mode 100644 OvmfPkg/PlatformPei/PlatformPeiBhyve.inf
This is the bhyve patch series for initial review. I know there are a few formatting issues, but thought it might be good to get some feedback to make sure I'm on the right track with adding this new package/platform. Signed-off-by: Rebecca Cran <rebecca@bsdio.com> Rebecca Cran (13): OvmfPkg: Add bhyve support into AcpiTimerLib OvmfPkg: support powering off bhyve guests BhyvePkg: Add BhyveFwCtlLibNull OvmfPkg: Add QemuFwCfgS3LibNull OvmfPkg: Add VBE2 mode info structure to LegacyVgaBios.h OvmfPkg: add QemuFwCfgPeiLibNull OvmfPkg: add QemuFwCfgS3LibNull Add BhyvePkg, to support the bhyve hypervisor OvmfPkg: Add bhyve support to PlatformPei OvmfPkg: Add bhyve support to AcpiPlatformDxe BhyvePkg: Add InstrincsLib to BhyveFwCtlLib BhyvePkg: __attribute__ doesn't exist on MSVC toolchains BhyvePkg: fix BhyveSetGraphicsMode call for VS2019 build BhyvePkg/AcpiTables/AcpiTables.inf | 47 + BhyvePkg/AcpiTables/Dsdt.asl | 1134 +++++++++++ BhyvePkg/AcpiTables/Facp.aslc | 82 + BhyvePkg/AcpiTables/Facs.aslc | 84 + BhyvePkg/AcpiTables/Hpet.aslc | 78 + BhyvePkg/AcpiTables/Madt.aslc | 149 ++ BhyvePkg/AcpiTables/Mcfg.aslc | 63 + BhyvePkg/AcpiTables/Platform.h | 76 + BhyvePkg/AcpiTables/Spcr.aslc | 69 + BhyvePkg/AcpiTables/Ssdt.asl | 19 + BhyvePkg/BhyvePkg.dec | 176 ++ BhyvePkg/BhyvePkg.fdf.inc | 92 + BhyvePkg/BhyvePkgX64.dsc | 862 +++++++++ BhyvePkg/BhyvePkgX64.fdf | 529 ++++++ BhyvePkg/BhyveRfbDxe/BhyveRfbDxe.inf | 76 + BhyvePkg/BhyveRfbDxe/ComponentName.c | 205 ++ BhyvePkg/BhyveRfbDxe/Gop.h | 153 ++ BhyvePkg/BhyveRfbDxe/GopDriver.c | 548 ++++++ BhyvePkg/BhyveRfbDxe/GopScreen.c | 398 ++++ BhyvePkg/BhyveRfbDxe/VbeShim.asm | 347 ++++ BhyvePkg/BhyveRfbDxe/VbeShim.c | 263 +++ BhyvePkg/BhyveRfbDxe/VbeShim.h | 912 +++++++++ BhyvePkg/BhyveRfbDxe/VbeShim.sh | 85 + BhyvePkg/DecomprScratchEnd.fdf.inc | 72 + BhyvePkg/Include/Library/BhyveFwCtlLib.h | 52 + .../Library/BhyveFwCtlLib/BhyveFwCtlLib.c | 431 +++++ .../Library/BhyveFwCtlLib/BhyveFwCtlLib.inf | 46 + .../BhyveFwCtlLibNull/BhyveFwCtlLibNull.c | 53 + .../BhyveFwCtlLibNull/BhyveFwCtlLibNull.inf | 39 + .../PlatformBootManagerLib/BdsPlatform.c | 1665 +++++++++++++++++ .../PlatformBootManagerLib/BdsPlatform.h | 196 ++ .../PlatformBootManagerLib.inf | 79 + .../PlatformBootManagerLib/PlatformData.c | 176 ++ BhyvePkg/License.txt | 50 + BhyvePkg/SmbiosPlatformDxe/Bhyve.c | 49 + .../SmbiosPlatformDxe/SmbiosPlatformDxe.c | 250 +++ .../SmbiosPlatformDxe/SmbiosPlatformDxe.h | 69 + .../SmbiosPlatformDxe/SmbiosPlatformDxe.inf | 59 + BhyvePkg/VarStore.fdf.inc | 122 ++ OvmfPkg/AcpiPlatformDxe/AcpiPlatform.c | 8 +- OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h | 9 + OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf | 3 + .../AcpiPlatformDxe/AcpiPlatformDxeBhyve.inf | 81 + OvmfPkg/AcpiPlatformDxe/Bhyve.c | 138 ++ OvmfPkg/Include/IndustryStandard/Bhyve.h | 25 + .../Include/IndustryStandard/LegacyVgaBios.h | 39 + OvmfPkg/Include/OvmfPlatforms.h | 1 + .../AcpiTimerLib/BaseAcpiTimerLibBhyve.c | 33 + .../AcpiTimerLib/BaseAcpiTimerLibBhyve.inf | 29 + .../QemuFwCfgLibNull/QemuFwCfgPeiLibNull.inf | 36 + .../QemuFwCfgLibNull/QemuFwCfgPeiNull.c | 107 ++ .../DxeQemuFwCfgS3LibFwCfgNull.inf | 32 + .../PeiQemuFwCfgS3LibFwCfgNull.inf | 39 + .../QemuFwCfgS3BasePeiNull.c | 221 +++ .../QemuFwCfgS3LibNull/QemuFwCfgS3DxeNull.c | 307 +++ .../QemuFwCfgS3PeiDxeNull.c | 31 + .../QemuFwCfgS3LibNull/QemuFwCfgS3PeiNull.c | 80 + .../Library/ResetSystemLib/ResetSystemLib.c | 6 + OvmfPkg/OvmfPkgIa32.dsc | 1 + OvmfPkg/OvmfPkgIa32X64.dsc | 1 + OvmfPkg/OvmfPkgX64.dsc | 1 + OvmfPkg/OvmfXen.dsc | 1 + OvmfPkg/PlatformPei/MemDetectBhyve.c | 631 +++++++ OvmfPkg/PlatformPei/PlatformBhyve.c | 612 ++++++ OvmfPkg/PlatformPei/PlatformPeiBhyve.inf | 119 ++ 65 files changed, 12443 insertions(+), 3 deletions(-) create mode 100644 BhyvePkg/AcpiTables/AcpiTables.inf create mode 100644 BhyvePkg/AcpiTables/Dsdt.asl create mode 100644 BhyvePkg/AcpiTables/Facp.aslc create mode 100644 BhyvePkg/AcpiTables/Facs.aslc create mode 100644 BhyvePkg/AcpiTables/Hpet.aslc create mode 100644 BhyvePkg/AcpiTables/Madt.aslc create mode 100644 BhyvePkg/AcpiTables/Mcfg.aslc create mode 100644 BhyvePkg/AcpiTables/Platform.h create mode 100644 BhyvePkg/AcpiTables/Spcr.aslc create mode 100644 BhyvePkg/AcpiTables/Ssdt.asl create mode 100644 BhyvePkg/BhyvePkg.dec create mode 100644 BhyvePkg/BhyvePkg.fdf.inc create mode 100644 BhyvePkg/BhyvePkgX64.dsc create mode 100644 BhyvePkg/BhyvePkgX64.fdf create mode 100644 BhyvePkg/BhyveRfbDxe/BhyveRfbDxe.inf create mode 100644 BhyvePkg/BhyveRfbDxe/ComponentName.c create mode 100644 BhyvePkg/BhyveRfbDxe/Gop.h create mode 100644 BhyvePkg/BhyveRfbDxe/GopDriver.c create mode 100644 BhyvePkg/BhyveRfbDxe/GopScreen.c create mode 100644 BhyvePkg/BhyveRfbDxe/VbeShim.asm create mode 100644 BhyvePkg/BhyveRfbDxe/VbeShim.c create mode 100644 BhyvePkg/BhyveRfbDxe/VbeShim.h create mode 100644 BhyvePkg/BhyveRfbDxe/VbeShim.sh create mode 100644 BhyvePkg/DecomprScratchEnd.fdf.inc create mode 100644 BhyvePkg/Include/Library/BhyveFwCtlLib.h create mode 100644 BhyvePkg/Library/BhyveFwCtlLib/BhyveFwCtlLib.c create mode 100644 BhyvePkg/Library/BhyveFwCtlLib/BhyveFwCtlLib.inf create mode 100644 BhyvePkg/Library/BhyveFwCtlLibNull/BhyveFwCtlLibNull.c create mode 100644 BhyvePkg/Library/BhyveFwCtlLibNull/BhyveFwCtlLibNull.inf create mode 100644 BhyvePkg/Library/PlatformBootManagerLib/BdsPlatform.c create mode 100644 BhyvePkg/Library/PlatformBootManagerLib/BdsPlatform.h create mode 100644 BhyvePkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf create mode 100644 BhyvePkg/Library/PlatformBootManagerLib/PlatformData.c create mode 100644 BhyvePkg/License.txt create mode 100644 BhyvePkg/SmbiosPlatformDxe/Bhyve.c create mode 100644 BhyvePkg/SmbiosPlatformDxe/SmbiosPlatformDxe.c create mode 100644 BhyvePkg/SmbiosPlatformDxe/SmbiosPlatformDxe.h create mode 100644 BhyvePkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf create mode 100644 BhyvePkg/VarStore.fdf.inc create mode 100644 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxeBhyve.inf create mode 100644 OvmfPkg/AcpiPlatformDxe/Bhyve.c create mode 100644 OvmfPkg/Include/IndustryStandard/Bhyve.h create mode 100644 OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLibBhyve.c create mode 100644 OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLibBhyve.inf create mode 100644 OvmfPkg/Library/QemuFwCfgLibNull/QemuFwCfgPeiLibNull.inf create mode 100644 OvmfPkg/Library/QemuFwCfgLibNull/QemuFwCfgPeiNull.c create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/DxeQemuFwCfgS3LibFwCfgNull.inf create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/PeiQemuFwCfgS3LibFwCfgNull.inf create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/QemuFwCfgS3BasePeiNull.c create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/QemuFwCfgS3DxeNull.c create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/QemuFwCfgS3PeiDxeNull.c create mode 100644 OvmfPkg/Library/QemuFwCfgS3LibNull/QemuFwCfgS3PeiNull.c create mode 100644 OvmfPkg/PlatformPei/MemDetectBhyve.c create mode 100644 OvmfPkg/PlatformPei/PlatformBhyve.c create mode 100644 OvmfPkg/PlatformPei/PlatformPeiBhyve.inf -- 2.26.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57445): https://edk2.groups.io/g/devel/message/57445 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
Hi Rebecca, On 04/16/20 01:09, Rebecca Cran wrote: > This is the bhyve patch series for initial review. > I know there are a few formatting issues, but thought > it might be good to get some feedback to make sure I'm > on the right track with adding this new package/platform. Thanks for posting this early. First, some rudimentary feedback. Regarding the BhyvePkg patches, I'm not familiar with the platform, and I definitely won't have time to review *those* patches, even for general sanity, or coding style. I recommend / request: (1) Please try to run the BhyvePkg code through the ECC tool, and see if ECC is OK with the coding style. (In some cases ECC is *way* too strict in my opinion, so please use common sense, and/or ask for feedback on the list, with specific code examples and questions.) (2) Regarding platform code correctness, if someone from the bhyve community can help you and review your code, that's welcome. We've had fruitful examples for such collaboration, between xen-devel and edk2-devel subscribers. But, I won't really "insist" on this -- I just propose it. (3) Please use SPDX license tags in the new files, rather than open-coded license blocks. Reference: <https://bugzilla.tianocore.org/show_bug.cgi?id=1373>. Note that this particular request of mine is only formal (it targets the representation of the licenses, not the license terms themselves). (4) Furthermore (asking under a separate bullet point), if you can, please contribute the new files under the "BSD-2-Clause-Patent" license, not the 2-clause BSDL. (See "# License Details" in "Readme.md", and again TianoCore#1373.) If you must (or want to) stick with the 2-clause BSDL, then please list the components with that license in "Readme.md", near the existent "exceptions". (5) Please make sure that the new files use CRLF line terminators consistently. (6) Please add a block to "Maintainers.txt" that lists the new package, and designates you as "M:". It would be nice to have at least an "R:" person too, e.g. from the *BSD / bhyve communities. (You'll need a reviewer for your future patches too -- I guess some of the stewards could alternate and help out with that, but that should be a stop-gap solution, not the rule. Adding BhyvePkg to edk2 should be justified by at least two bhyve users stepping up, for reviewing each other's BhyvePkg patches.) With the above addressed, I reckon I'm OK with ACKing the BhyvePkg patches. I hope at least one other steward can approve the BhyvePkg patches, like that. Obviously feedback and corrections to my above requests is highly welcome. Regarding the OvmfPkg patches, I'll go through them (later) with a finer granularity. In advance, I can already tell you that I wouldn't like bhyve-oriented changes added to either OvmfPkg/PlatformPei (patch#9) or to OvmfPkg/AcpiPlatformDxe (patch#10). Both of these modules are already extremely complex (aka "brittle"), they're super important on QEMU; and not only am I worried about regressions, but I'm strongly opposed to any coding restrictions/limitations that bhyve code might present in those modules for future QEMU features/bugfixes. So, regarding these two modules, please do create copies of them under BhyvePkg, add the bhyve special sauce there, and eliminate everything from them that you do not need on bhyve. These are modules where I definitely opt for razor sharp separation -- and code duplication, if need be --, because both modules are very tightly coupled with the hypervisor platform, and historically, both modules have caused *lots* of headache. Xen code in these modules is already a maintenance problem for me (but the Xen code is thankfully on its way to its own platform, see TianoCore#2122). Thanks! Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57476): https://edk2.groups.io/g/devel/message/57476 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
argh, used the wrong email address for CC'ing Leif. Resending... On 04/16/20 22:47, Laszlo Ersek wrote: > Hi Rebecca, > > On 04/16/20 01:09, Rebecca Cran wrote: >> This is the bhyve patch series for initial review. >> I know there are a few formatting issues, but thought >> it might be good to get some feedback to make sure I'm >> on the right track with adding this new package/platform. > > Thanks for posting this early. > > First, some rudimentary feedback. > > Regarding the BhyvePkg patches, I'm not familiar with the platform, and > I definitely won't have time to review *those* patches, even for general > sanity, or coding style. I recommend / request: > > (1) Please try to run the BhyvePkg code through the ECC tool, and see if > ECC is OK with the coding style. (In some cases ECC is *way* too strict > in my opinion, so please use common sense, and/or ask for feedback on > the list, with specific code examples and questions.) > > (2) Regarding platform code correctness, if someone from the bhyve > community can help you and review your code, that's welcome. We've had > fruitful examples for such collaboration, between xen-devel and > edk2-devel subscribers. But, I won't really "insist" on this -- I just > propose it. > > (3) Please use SPDX license tags in the new files, rather than > open-coded license blocks. Reference: > <https://bugzilla.tianocore.org/show_bug.cgi?id=1373>. Note that this > particular request of mine is only formal (it targets the representation > of the licenses, not the license terms themselves). > > (4) Furthermore (asking under a separate bullet point), if you can, > please contribute the new files under the "BSD-2-Clause-Patent" license, > not the 2-clause BSDL. (See "# License Details" in "Readme.md", and > again TianoCore#1373.) > > If you must (or want to) stick with the 2-clause BSDL, then please list > the components with that license in "Readme.md", near the existent > "exceptions". > > (5) Please make sure that the new files use CRLF line terminators > consistently. > > (6) Please add a block to "Maintainers.txt" that lists the new package, > and designates you as "M:". It would be nice to have at least an "R:" > person too, e.g. from the *BSD / bhyve communities. (You'll need a > reviewer for your future patches too -- I guess some of the stewards > could alternate and help out with that, but that should be a stop-gap > solution, not the rule. Adding BhyvePkg to edk2 should be justified by > at least two bhyve users stepping up, for reviewing each other's > BhyvePkg patches.) > > With the above addressed, I reckon I'm OK with ACKing the BhyvePkg > patches. I hope at least one other steward can approve the BhyvePkg > patches, like that. Obviously feedback and corrections to my above > requests is highly welcome. > > > Regarding the OvmfPkg patches, I'll go through them (later) with a finer > granularity. In advance, I can already tell you that I wouldn't like > bhyve-oriented changes added to either OvmfPkg/PlatformPei (patch#9) or > to OvmfPkg/AcpiPlatformDxe (patch#10). Both of these modules are already > extremely complex (aka "brittle"), they're super important on QEMU; and > not only am I worried about regressions, but I'm strongly opposed to any > coding restrictions/limitations that bhyve code might present in those > modules for future QEMU features/bugfixes. > > So, regarding these two modules, please do create copies of them under > BhyvePkg, add the bhyve special sauce there, and eliminate everything > from them that you do not need on bhyve. > > These are modules where I definitely opt for razor sharp separation -- > and code duplication, if need be --, because both modules are very > tightly coupled with the hypervisor platform, and historically, both > modules have caused *lots* of headache. Xen code in these modules is > already a maintenance problem for me (but the Xen code is thankfully on > its way to its own platform, see TianoCore#2122). > > Thanks! > Laszlo > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57479): https://edk2.groups.io/g/devel/message/57479 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
Hi Laszlo, I've removed comments from you that I won't have any difficulty with implementing. > (1) Please try to run the BhyvePkg code through the ECC tool, and see if > ECC is OK with the coding style. (In some cases ECC is *way* too strict > in my opinion, so please use common sense, and/or ask for feedback on > the list, with specific code examples and questions.) I'm running into a problem with Ecc against any code: I'm using Ubuntu 19.10, and have copied the output of running it against MdePkg at the end of this email. Does Ecc work with Python 3, or does it still need Python 2? > (2) Regarding platform code correctness, if someone from the bhyve > community can help you and review your code, that's welcome. We've had > fruitful examples for such collaboration, between xen-devel and > edk2-devel subscribers. But, I won't really "insist" on this -- I just > propose it. Peter Grehan, who's agreed to be the reviewer for BhyvePkg, has already reviewed the changes. > If you must (or want to) stick with the 2-clause BSDL, then please list > the components with that license in "Readme.md", near the existent > "exceptions". Unfortunately it's not going to be possible to contact all the original authors who contributed to BhyvePkg, so we'll need to stick with 2-clause BSDL. > So, regarding these two modules, please do create copies of them under > BhyvePkg, add the bhyve special sauce there, and eliminate everything > from them that you do not need on bhyve. Perfect! Peter had concerns about the added complexity of those modules, so it'll be good to have versions that are specific to bhyve. The output of Ecc is as follows: bcran@photon:~/src/uefi/edk2$ Ecc -c ~/src/uefi/edk2/BaseTools/Source/Python/Ecc/config.ini -e ~/src/uefi/edk2/BaseTools/Source/Python/Ecc/exception.xml -t ~/src/uefi/edk2/MdePkg -r MdePkgECC.csv /home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/EccMain.py:409: DeprecationWarning: time.clock has been deprecated in Python 3.3 and will be removed from Python 3.8: use time.perf_counter or time.process_time instead StartTime = time.clock() 00:37:17, Apr.17 2020 [00:00] Loading ECC configuration ... done Building database for Meta Data File ... Building database for meta data files ... Parsing //home/bcran/src/uefi/edk2/MdePkg/MdePkg.dec Parser... //home/bcran/src/uefi/edk2/MdePkg/MdePkg.dec(2301): warning: Unrecognized section [UserExtensions.TianoCore."ExtraFiles"] Parsing //home/bcran/src/uefi/edk2/MdePkg/MdePkg.dsc Parsing //home/bcran/src/uefi/edk2/MdePkg/MdePkg.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/MdePkgExtra.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseCpuLib/BaseCpuLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseCpuLib/BaseCpuLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseExtractGuidedSectionLib/BaseExtractGuidedSectionLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseExtractGuidedSectionLib/BaseExtractGuidedSectionLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicArmVirt.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicArmVirt.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseLib/BaseLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseLib/BaseLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLib/BaseMemoryLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibMmx/BaseMemoryLibMmx.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibMmx/BaseMemoryLibMmx.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibOptDxe/BaseMemoryLibOptDxe.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibOptDxe/BaseMemoryLibOptDxe.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibOptPei/BaseMemoryLibOptPei.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibOptPei/BaseMemoryLibOptPei.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibSse2/BaseMemoryLibSse2.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseMemoryLibSse2/BaseMemoryLibSse2.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePcdLibNull/BasePcdLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciExpressLib/BasePciExpressLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciLibCf8/BasePciLibCf8.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciSegmentInfoLibNull/BasePciSegmentInfoLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciSegmentInfoLibNull/BasePciSegmentInfoLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePeCoffExtraActionLibNull/PeCoffExtraActionLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePeCoffLib/BasePeCoffLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePostCodeLibDebug/BasePostCodeLibDebug.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePostCodeLibDebug/BasePostCodeLibDebug.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePostCodeLibPort80/BasePostCodeLibPort80.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePostCodeLibPort80/BasePostCodeLibPort80.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePrintLib/BasePrintLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BasePrintLib/BasePrintLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseRngLib/BaseRngLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseRngLib/BaseRngLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseRngLibNull/BaseRngLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseRngLibNull/BaseRngLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3IoLib/BaseS3IoLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3IoLib/BaseS3IoLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3PciLib/BaseS3PciLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3PciLib/BaseS3PciLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3PciSegmentLib/BaseS3PciSegmentLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3PciSegmentLib/BaseS3PciSegmentLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3SmbusLib/BaseS3SmbusLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3SmbusLib/BaseS3SmbusLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3StallLib/BaseS3StallLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseS3StallLib/BaseS3StallLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/BaseUefiDecompressLib/BaseUefiTianoCustomDecompressLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeHobLib/DxeHobLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeHobLib/DxeHobLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeHstiLib/DxeHstiLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeHstiLib/DxeHstiLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeIoLibCpuIo2/DxeIoLibCpuIo2.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeIoLibCpuIo2/DxeIoLibCpuIo2.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxePcdLib/DxePcdLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxePcdLib/DxePcdLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeRuntimeDebugLibSerialPort/DxeRuntimeDebugLibSerialPort.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeRuntimeDebugLibSerialPort/DxeRuntimeDebugLibSerialPort.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeRuntimePciExpressLib/DxeRuntimePciExpressLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeRuntimePciExpressLib/DxeRuntimePciExpressLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeServicesLib/DxeServicesLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeServicesLib/DxeServicesLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeSmbusLib/DxeSmbusLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/DxeSmbusLib/DxeSmbusLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/MmServicesTableLib/MmServicesTableLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PciSegmentLibSegmentInfo/BasePciSegmentLibSegmentInfo.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PciSegmentLibSegmentInfo/BasePciSegmentLibSegmentInfo.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PciSegmentLibSegmentInfo/DxeRuntimePciSegmentLibSegmentInfo.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PciSegmentLibSegmentInfo/DxeRuntimePciSegmentLibSegmentInfo.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiDxePostCodeLibReportStatusCode/PeiDxePostCodeLibReportStatusCode.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiDxePostCodeLibReportStatusCode/PeiDxePostCodeLibReportStatusCode.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiHobLib/PeiHobLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiHobLib/PeiHobLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiIoLibCpuIo/PeiIoLibCpuIo.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiIoLibCpuIo/PeiIoLibCpuIo.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiMemoryLib/PeiMemoryLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiMemoryLib/PeiMemoryLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiPcdLib/PeiPcdLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiPcdLib/PeiPcdLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiPciLibPciCfg2/PeiPciLibPciCfg2.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiPciLibPciCfg2/PeiPciLibPciCfg2.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiPciSegmentLibPciCfg2/PeiPciSegmentLibPciCfg2.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiPciSegmentLibPciCfg2/PeiPciSegmentLibPciCfg2.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiServicesLib/PeiServicesLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiServicesLib/PeiServicesLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiSmbusLibSmbus2Ppi/PeiSmbusLibSmbus2Ppi.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeiSmbusLibSmbus2Ppi/PeiSmbusLibSmbus2Ppi.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/PeimEntryPoint/PeimEntryPoint.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmIoLib/SmmIoLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmIoLib/SmmIoLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmIoLibSmmCpuIo2/SmmIoLibSmmCpuIo2.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmIoLibSmmCpuIo2/SmmIoLibSmmCpuIo2.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmLibNull/SmmLibNull.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmLibNull/SmmLibNull.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmMemLib/SmmMemLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmMemLib/SmmMemLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmPciExpressLib/SmmPciExpressLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmPciLibPciRootBridgeIo/SmmPciLibPciRootBridgeIo.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmPciLibPciRootBridgeIo/SmmPciLibPciRootBridgeIo.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmPeriodicSmiLib/SmmPeriodicSmiLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmPeriodicSmiLib/SmmPeriodicSmiLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDebugLibDebugPortProtocol/UefiDebugLibDebugPortProtocol.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDebugLibDebugPortProtocol/UefiDebugLibDebugPortProtocol.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDebugLibStdErr/UefiDebugLibStdErr.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDebugLibStdErr/UefiDebugLibStdErr.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibOptionalDevicePathProtocol.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibOptionalDevicePathProtocol.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDevicePathLibDevicePathProtocol/UefiDevicePathLibDevicePathProtocol.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDevicePathLibDevicePathProtocol/UefiDevicePathLibDevicePathProtocol.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiLib/UefiLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiLib/UefiLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiMemoryLib/UefiMemoryLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiMemoryLib/UefiMemoryLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiPciLibPciRootBridgeIo/UefiPciLibPciRootBridgeIo.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiPciLibPciRootBridgeIo/UefiPciLibPciRootBridgeIo.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiPciSegmentLibPciRootBridgeIo/UefiPciSegmentLibPciRootBridgeIo.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiPciSegmentLibPciRootBridgeIo/UefiPciSegmentLibPciRootBridgeIo.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiScsiLib/UefiScsiLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiScsiLib/UefiScsiLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiUsbLib/UefiUsbLib.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Library/UefiUsbLib/UefiUsbLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/MdePkgHostTest.dsc EccMain.py... /home/bcran/src/uefi/edk2/UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc(9): error 3000: No '!include' allowed in included file !include UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/UnitTest/Library/BaseLib/BaseLibUnitTestsHost.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/UnitTest/Library/BaseLib/BaseLibUnitTestsUefi.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/UnitTest/Library/BaseSafeIntLib/TestBaseSafeIntLib.uni Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/UnitTest/Library/BaseSafeIntLib/TestBaseSafeIntLibDxe.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/UnitTest/Library/BaseSafeIntLib/TestBaseSafeIntLibHost.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/UnitTest/Library/BaseSafeIntLib/TestBaseSafeIntLibPei.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/UnitTest/Library/BaseSafeIntLib/TestBaseSafeIntLibSmm.inf Parsing //home/bcran/src/uefi/edk2/MdePkg/Test/UnitTest/Library/BaseSafeIntLib/TestBaseSafeIntLibUefiShell.inf Building database for meta data files done! Building database for Meta Data File Done! Parsing //home/bcran/src/uefi/edk2/MdePkg/Include/Base.h ANTLR runtime and generated code versions disagree: 4.8!=4.7.1 ANTLR runtime and generated code versions disagree: 4.8!=4.7.1 Traceback (most recent call last): File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "/usr/lib/python3.7/runpy.py", line 85, in _run_code exec(code, run_globals) File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/EccMain.py", line 410, in <module> Ecc = Ecc() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/EccMain.py", line 94, in __init__ self.DetectOnlyScanDirs() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/EccMain.py", line 130, in DetectOnlyScanDirs self.BuildDatabase() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/EccMain.py", line 150, in BuildDatabase c.CollectSourceCodeDataIntoDB(EccGlobalData.gTarget) File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/c.py", line 526, in CollectSourceCodeDataIntoDB collector.ParseFile() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CodeFragmentCollector.py", line 513, in ParseFile parser.translation_unit() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 826, in translation_unit self.external_declaration() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 931, in external_declaration self.declaration() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 1239, in declaration localctx.b = self.declaration_specifiers() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 1158, in declaration_specifiers self.type_specifier() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 1568, in type_specifier localctx.s = self.struct_or_union_specifier() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 1721, in struct_or_union_specifier self.struct_declaration_list() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 1834, in struct_declaration_list self.struct_declaration() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 1890, in struct_declaration self.struct_declarator_list() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 2021, in struct_declarator_list self.struct_declarator() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 2086, in struct_declarator self.declarator() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 2457, in declarator self.direct_declarator() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 2532, in direct_declarator self.declarator_suffix() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 2629, in declarator_suffix self.constant_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 4542, in constant_expression self.conditional_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 4760, in conditional_expression localctx.e = self.logical_or_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 4824, in logical_or_expression self.logical_and_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 4885, in logical_and_expression self.inclusive_or_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 4946, in inclusive_or_expression self.exclusive_or_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 5007, in exclusive_or_expression self.and_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 5068, in and_expression self.equality_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 5129, in equality_expression self.relational_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 5195, in relational_expression self.shift_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 5261, in shift_expression self.additive_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 3649, in additive_expression self.multiplicative_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 3724, in multiplicative_expression self.cast_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 3824, in cast_expression self.unary_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 3891, in unary_expression self.postfix_expression() File "/home/bcran/src/uefi/edk2/BaseTools/Source/Python/Ecc/CParser4/CParser.py", line 4025, in postfix_expression self.FuncCallText += (None if localctx.p is None else self._input.getText((localctx.p.start,localctx.p.stop))) File "/home/bcran/.local/lib/python3.7/site-packages/antlr4/BufferedTokenStream.py", line 286, in getText if start < 0 or stop < 0 or stop < start: TypeError: '<' not supported between instances of 'tuple' and 'int' -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57493): https://edk2.groups.io/g/devel/message/57493 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
On 4/17/20 12:46 AM, Rebecca Cran wrote: > > I'm running into a problem with Ecc against any code: I'm using Ubuntu > 19.10, and have copied the output of running it against MdePkg at the > end of this email. Does Ecc work with Python 3, or does it still need > Python 2? Of course, this was the important line: ANTLR runtime and generated code versions disagree: 4.8!=4.7.1 Running "pip3 install --user antlr4-python3-runtime==4.7.1" fixed the problem. -- Rebecca Cran -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57494): https://edk2.groups.io/g/devel/message/57494 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
On 04/17/20 08:55, Rebecca Cran wrote: > On 4/17/20 12:46 AM, Rebecca Cran wrote: > >> >> I'm running into a problem with Ecc against any code: I'm using Ubuntu >> 19.10, and have copied the output of running it against MdePkg at the >> end of this email. Does Ecc work with Python 3, or does it still need >> Python 2? > > Of course, this was the important line: > > ANTLR runtime and generated code versions disagree: 4.8!=4.7.1 > > > Running "pip3 install --user antlr4-python3-runtime==4.7.1" fixed the > problem. Phew, thanks for figuring that out! Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57608): https://edk2.groups.io/g/devel/message/57608 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
On 04/17/20 08:46, Rebecca Cran wrote: >> (2) Regarding platform code correctness, if someone from the bhyve >> community can help you and review your code, that's welcome. We've had >> fruitful examples for such collaboration, between xen-devel and >> edk2-devel subscribers. But, I won't really "insist" on this -- I just >> propose it. > > Peter Grehan, who's agreed to be the reviewer for BhyvePkg, has already > reviewed the changes. That's awesome! It would be great if Peter could post formal R-b's or A-b's in response to (some of) the patches on edk2-devel. Alternatively, you could mention Peter's review somewhere in the commit messages, in natural language. Again, not a "hard requirement" from my side, I'd just really appreciate it. > >> If you must (or want to) stick with the 2-clause BSDL, then please list >> the components with that license in "Readme.md", near the existent >> "exceptions". > > Unfortunately it's not going to be possible to contact all the original > authors who contributed to BhyvePkg, so we'll need to stick with > 2-clause BSDL. OK! 2-clause BSDL is fine, per "Readme.md": """ 4. It is preferred that contributions are submitted using the same copyright license as the base project. When that is not possible, then contributions using the following licenses can be accepted: * BSD (2-clause): http://opensource.org/licenses/BSD-2-Clause """ Just please use the SPDX identifier format for the 2-clause BSDL, and also list the (partially) covered subdirs in "# License Details", in the Readme.md file. >> So, regarding these two modules, please do create copies of them under >> BhyvePkg, add the bhyve special sauce there, and eliminate everything >> from them that you do not need on bhyve. > > Perfect! Peter had concerns about the added complexity of those modules, > so it'll be good to have versions that are specific to bhyve. I'm relieved to hear this :) Thanks! Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57609): https://edk2.groups.io/g/devel/message/57609 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
On 4/20/20 3:57 AM, Laszlo Ersek wrote: > It would be great if Peter could post formal R-b's or A-b's in response > to (some of) the patches on edk2-devel. > > Alternatively, you could mention Peter's review somewhere in the commit > messages, in natural language. > > Again, not a "hard requirement" from my side, I'd just really appreciate it. I've cc'd him on the latest v3 patch series, and asked him to give formal R-b's. -- Rebecca Cran -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57751): https://edk2.groups.io/g/devel/message/57751 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
On 04/16/20 22:47, Laszlo Ersek wrote: > (5) Please make sure that the new files use CRLF line terminators > consistently. Indeed I can't apply these patches with git-am, without some manual hacking. Lines in the patches are terminated with <CR><CR><LF>. Please run "BaseTools/Scripts/SetupGit.py" in your edk2 clone. Thanks, Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57498): https://edk2.groups.io/g/devel/message/57498 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
On 4/17/20 1:55 AM, Laszlo Ersek wrote: > Indeed I can't apply these patches with git-am, without some manual > hacking. Lines in the patches are terminated with <CR><CR><LF>. > > Please run "BaseTools/Scripts/SetupGit.py" in your edk2 clone. Ugh, sorry I thought I'd fixed that. I'll fix my editors and send another version out in the next day or so. -- Rebecca Cran -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57514): https://edk2.groups.io/g/devel/message/57514 Mute This Topic: https://groups.io/mt/73045166/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
© 2016 - 2024 Red Hat, Inc.