From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.93, mailfrom: hao.a.wu@intel.com) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by groups.io with SMTP; Tue, 18 Jun 2019 22:09:46 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Jun 2019 22:09:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,391,1557212400"; d="scan'208";a="164922258" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by orsmga006.jf.intel.com with ESMTP; 18 Jun 2019 22:09:43 -0700 Received: from fmsmsx112.amr.corp.intel.com (10.18.116.6) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 18 Jun 2019 22:09:42 -0700 Received: from shsmsx102.ccr.corp.intel.com (10.239.4.154) by FMSMSX112.amr.corp.intel.com (10.18.116.6) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 18 Jun 2019 22:09:42 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.185]) by shsmsx102.ccr.corp.intel.com ([169.254.2.33]) with mapi id 14.03.0439.000; Wed, 19 Jun 2019 13:09:41 +0800 From: "Wu, Hao A" To: "devel@edk2.groups.io" CC: Leif Lindholm , "lersek@redhat.com" , "Kinney, Michael D" , "Andrew Fish" , "Justen, Jordan L" , "Ard Biesheuvel" , "Gao, Liming" , "Yao, Jiewen" , "Zeng, Star" Subject: Re: [RFC] Fine-grained review ownership for MdeModulePkg Thread-Topic: [RFC] Fine-grained review ownership for MdeModulePkg Thread-Index: AdUfX+yvPcbIWDrsTIaYM9h7G+B2QwAmE+IAAZUzdKA= Date: Wed, 19 Jun 2019 05:09:40 +0000 Message-ID: References: <20190611095150.l7vmqyn3ln4gmvyq@bivouac.eciton.net> In-Reply-To: <20190611095150.l7vmqyn3ln4gmvyq@bivouac.eciton.net> Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: hao.a.wu@intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hello all, As suggested by Ray and Leif, modules (with wildcard) in MdeModulePkg are classified to a list of features. Please note that: * The below list is a draft at this moment, please help to provide feedbacks/comments; * Modules with no clear classification are listed under the 'Misc' section at the bottom of the list. ACPI: MdeModulePkg/Include/*/*Acpi*.h MdeModulePkg/Universal/Acpi/ BDS: MdeModulePkg/Include/Library/PlatformBootManagerLib.h MdeModulePkg/Include/Library/UefiBootManagerLib.h MdeModulePkg/Library/PlatformBootManagerLibNull/ MdeModulePkg/Library/UefiBootManagerLib/ MdeModulePkg/Universal/BdsDxe/ MdeModulePkg/Universal/BootManagerPolicyDxe/ MdeModulePkg/Universal/LoadFileOnFv2/ MdeModulePkg/Universal/SecurityStubDxe/Defer3rdPartyImageLoad.* Console: MdeModulePkg/Include/Guid/ConnectConInEvent.h MdeModulePkg/Include/Guid/ConsoleInDevice.h MdeModulePkg/Include/Guid/ConsoleOutDevice.h MdeModulePkg/Include/Guid/StandardErrorDevice.h MdeModulePkg/Include/Guid/TtyTerm.h MdeModulePkg/Universal/Console/ConPlatformDxe/ MdeModulePkg/Universal/Console/ConSplitterDxe/ MdeModulePkg/Universal/Console/GraphicsConsoleDxe/ MdeModulePkg/Universal/Console/TerminalDxe/ Core (PEI, DXE and Runtime): MdeModulePkg/Core/Dxe/* MdeModulePkg/Core/Dxe/Dispatcher/ MdeModulePkg/Core/Dxe/DxeMain/ MdeModulePkg/Core/Dxe/Event/ MdeModulePkg/Core/Dxe/FwVol*/ MdeModulePkg/Core/Dxe/Hand/ MdeModulePkg/Core/Dxe/Image/ MdeModulePkg/Core/Dxe/Library/ MdeModulePkg/Core/Dxe/Misc/ MdeModulePkg/Core/Dxe/SectionExtraction/ MdeModulePkg/Core/DxeIplPeim/ MdeModulePkg/Core/Pei/* MdeModulePkg/Core/Pei/BootMode/ MdeModulePkg/Core/Pei/CpuIo/ MdeModulePkg/Core/Pei/Dependency/ MdeModulePkg/Core/Pei/Dispatcher/ MdeModulePkg/Core/Pei/FwVol/ MdeModulePkg/Core/Pei/Hob/ MdeModulePkg/Core/Pei/Image/ MdeModulePkg/Core/Pei/PeiMain/ MdeModulePkg/Core/Pei/Ppi/ MdeModulePkg/Core/Pei/Security/ MdeModulePkg/Core/RuntimeDxe/ MdeModulePkg/Include/Guid/Crc32GuidedSectionExtraction.h MdeModulePkg/Include/Guid/EventExitBootServiceFailed.h MdeModulePkg/Include/Guid/IdleLoopEvent.h MdeModulePkg/Include/Guid/LoadModuleAtFixedAddress.h MdeModulePkg/Include/Library/SecurityManagementLib.h MdeModulePkg/Library/*SectionExtract*/ MdeModulePkg/Library/DxeSecurityManagementLib/ MdeModulePkg/Universal/PlatformDriOverrideDxe/ MdeModulePkg/Universal/SectionExtraction*/ MdeModulePkg/Universal/SecurityStubDxe/SecurityStub.c Debug: MdeModulePkg/Include/Guid/DebugMask.h MdeModulePkg/Include/Library/DebugAgentLib.h MdeModulePkg/Include/Ppi/Debug.h MdeModulePkg/Library/*Debug*/ MdeModulePkg/Universal/Debug*/ Decompress: MdeModulePkg/Include/Guid/LzmaDecompress.h MdeModulePkg/Library/*Decompress*/ Device: MdeModulePkg/Bus/Ata/ MdeModulePkg/Bus/I2c/ MdeModulePkg/Bus/Isa/ MdeModulePkg/Bus/Pci/Ehci*/ MdeModulePkg/Bus/Pci/IdeBusPei/ MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/ MdeModulePkg/Bus/Pci/NvmExpress*/ MdeModulePkg/Bus/Pci/PciSioSerialDxe/ MdeModulePkg/Bus/Pci/SataControllerDxe/ MdeModulePkg/Bus/Pci/SdMmc*/ MdeModulePkg/Bus/Pci/Ufs*/ MdeModulePkg/Bus/Pci/Uhci*/ MdeModulePkg/Bus/Pci/Xhci*/ MdeModulePkg/Bus/Scsi/ MdeModulePkg/Bus/Sd/ MdeModulePkg/Bus/Ufs/ MdeModulePkg/Bus/Usb/ MdeModulePkg/Include/*/*Ata*.h MdeModulePkg/Include/*/*NonDiscoverableDevice*.h MdeModulePkg/Include/*/*NvmExpress*.h MdeModulePkg/Include/*/*SerialPort*.h MdeModulePkg/Include/*/*SdMmc*.h MdeModulePkg/Include/*/*Ufs*.h MdeModulePkg/Include/*/*Usb*.h MdeModulePkg/Include/Guid/S3StorageDeviceInitList.h MdeModulePkg/Include/Guid/RecoveryDevice.h MdeModulePkg/Include/Guid/UsbKeyBoardLayout.h MdeModulePkg/Include/Ppi/StorageSecurityCommand.h MdeModulePkg/Include/Protocol/Ps2Policy.h MdeModulePkg/Library/BaseSerialPortLib16550/ MdeModulePkg/Library/NonDiscoverableDeviceRegistrationLib/ MdeModulePkg/Universal/SerialDxe/ Disk: MdeModulePkg/Universal/Disk/ EBC: MdeModulePkg/Include/*/*Ebc*.h MdeModulePkg/Include/Protocol/DebuggerConfiguration.h MdeModulePkg/Universal/EbcDxe/ Firmware Update: MdeModulePkg/Application/CapsuleApp/ MdeModulePkg/Include/*/*Capsule*.h MdeModulePkg/Include/Library/DisplayUpdateProgressLib.h MdeModulePkg/Include/Library/FmpAuthenticationLib.h MdeModulePkg/Include/Protocol/EsrtManagement.h MdeModulePkg/Include/Protocol/FirmwareManagementProgress.h MdeModulePkg/Library/DisplayUpdateProgressLib*/ MdeModulePkg/Library/DxeCapsuleLib*/ MdeModulePkg/Library/FmpAuthenticationLibNull/ MdeModulePkg/Universal/Capsule*/ MdeModulePkg/Universal/Esrt*/ Graphic: MdeModulePkg/Include/*/*Logo*.h MdeModulePkg/Include/Library/BmpSupportLib.h MdeModulePkg/Include/Library/FrameBufferBltLib.h MdeModulePkg/Library/BaseBmpSupportLib/ MdeModulePkg/Library/BootLogoLib/ MdeModulePkg/Library/FrameBufferBltLib/ MdeModulePkg/Logo/ MdeModulePkg/Universal/Console/GraphicsOutputDxe/ HII/UI: MdeModulePkg/Application/BootManagerMenuApp/ MdeModulePkg/Application/UiApp/ MdeModulePkg/Include/*/*FileExplorer*.h MdeModulePkg/Include/*/*FormBrowser*.h MdeModulePkg/Include/*/*Hii*.h MdeModulePkg/Include/Library/CustomizedDisplayLib.h MdeModulePkg/Include/Protocol/DisplayProtocol.h MdeModulePkg/Library/*FileExplorer*/ MdeModulePkg/Library/*Hii*/ MdeModulePkg/Library/*UiLib/ MdeModulePkg/Library/CustomizedDisplayLib/ MdeModulePkg/Universal/DisplayEngineDxe/ MdeModulePkg/Universal/FileExplorerDxe/ MdeModulePkg/Universal/Hii*/ MdeModulePkg/Universal/SetupBrowserDxe/ IPMI: MdeModulePkg/Include/*/*Ipmi*.h MdeModulePkg/Library/*Ipmi*/ Memory Management: MdeModulePkg/Application/MemoryProfileInfo/ MdeModulePkg/Core/Dxe/Gcd/ MdeModulePkg/Core/Dxe/Mem/ MdeModulePkg/Core/Pei/Memory/ MdeModulePkg/Include/*/*Mem*.h MdeModulePkg/Include/*/*IoMmu*.h MdeModulePkg/Library/*MemoryAllocation*/ MdeModulePkg/Universal/MemoryTest/ PCD: MdeModulePkg/Application/DumpDynPcd/ MdeModulePkg/Include/*/*Pcd*.h MdeModulePkg/Universal/PCD/ PCI Bus: MdeModulePkg/Bus/Pci/IncompatiblePciDeviceSupportDxe/ MdeModulePkg/Bus/Pci/PciBusDxe/ MdeModulePkg/Bus/Pci/PciHostBridgeDxe/ MdeModulePkg/Core/Pei/PciCfg2/ MdeModulePkg/Include/Library/PciHostBridgeLib.h MdeModulePkg/Library/PciHostBridgeLibNull/ MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/ Performance: MdeModulePkg/Include/*/*Perf*.h MdeModulePkg/Library/*Perf*/ Reset: MdeModulePkg/Core/Pei/Reset/ MdeModulePkg/Include/*/*Reset*.h MdeModulePkg/Library/*Reset*/ MdeModulePkg/Universal/ResetSystem*/ S3: MdeModulePkg/Include/*/*BootScript*.h MdeModulePkg/Include/*/*LockBox*.h MdeModulePkg/Include/*/*S3*.h MdeModulePkg/Library/*LockBox*/ MdeModulePkg/Library/*S3*/ MdeModulePkg/Universal/LockBox/ SMBIOS: MdeModulePkg/Universal/Smbios*/ SMM: MdeModulePkg/Application/SmiHandlerProfileInfo/ MdeModulePkg/Core/PiSmmCore/ MdeModulePkg/Include/*/*Smi*.h MdeModulePkg/Include/*/*Smm*.h MdeModulePkg/Library/*Smi*/ MdeModulePkg/Library/*Smm*/ MdeModulePkg/Universal/SmmCommunicationBufferDxe/ Status Code: MdeModulePkg/Core/Pei/StatusCode/ MdeModulePkg/Include/*/*StatusCode*.h MdeModulePkg/Library/*StatusCode*/ MdeModulePkg/Universal/*StatusCode*/ Variable: MdeModulePkg/Application/VariableInfo/ MdeModulePkg/Include/*/*FaultTolerantWrite*.h MdeModulePkg/Include/*/*Var*.h MdeModulePkg/Include/Guid/SystemNvDataGuid.h MdeModulePkg/Include/Protocol/SwapAddressRange.h MdeModulePkg/Library/*Var*/ MdeModulePkg/Universal/FaultTolerantWrite*/ MdeModulePkg/Universal/Variable/ Misc: MdeModulePkg/Application/HelloWorld/ MdeModulePkg/Include/Guid/MdeModulePkgTokenSpace.h MdeModulePkg/Include/Guid/MtcVendor.h MdeModulePkg/Include/Guid/ZeroGuid.h MdeModulePkg/Include/Library/CpuExceptionHandlerLib.h MdeModulePkg/Include/Library/PlatformHookLib.h MdeModulePkg/Include/Library/RecoveryLib.h MdeModulePkg/Include/Library/SortLib.h MdeModulePkg/Include/Library/TpmMeasurementLib.h MdeModulePkg/Include/Protocol/Dpc.h MdeModulePkg/Include/Protocol/LoadPe32Image.h MdeModulePkg/Include/Protocol/PeCoffImageEmulator.h MdeModulePkg/Include/Protocol/Print2.h MdeModulePkg/Library/BaseHobLibNull/ MdeModulePkg/Library/BasePlatformHookLibNull/ MdeModulePkg/Library/BaseSortLib/ MdeModulePkg/Library/CpuExceptionHandlerLibNull/ MdeModulePkg/Library/DxePrintLibPrint2Protocol/ MdeModulePkg/Library/PeiRecoveryLibNull/ MdeModulePkg/Library/PlatformHookLibSerialPortPpi/ MdeModulePkg/Library/TpmMeasurementLibNull/ MdeModulePkg/Library/UefiSortLib/ MdeModulePkg/Universal/DevicePathDxe/ MdeModulePkg/Universal/DriverHealthManagerDxe/ MdeModulePkg/Universal/DriverSampleDxe/ MdeModulePkg/Universal/FvSimpleFileSystemDxe/ MdeModulePkg/Universal/LegacyRegion2Dxe/ MdeModulePkg/Universal/Metronome/ MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/ MdeModulePkg/Universal/PrintDxe/ MdeModulePkg/Universal/RegularExpressionDxe/ MdeModulePkg/Universal/TimestampDxe/ MdeModulePkg/Universal/WatchdogTimerDxe/ Best Regards, Hao Wu > -----Original Message----- > From: Leif Lindholm [mailto:leif.lindholm@linaro.org] > Sent: Tuesday, June 11, 2019 5:52 PM > To: Wu, Hao A > Cc: devel@edk2.groups.io; lersek@redhat.com; Kinney, Michael D; Andrew > Fish; Justen, Jordan L; Ard Biesheuvel; Gao, Liming; Yao, Jiewen; Zeng, S= tar > Subject: Re: [RFC] Fine-grained review ownership for MdeModulePkg >=20 > Hi Wu Hao, >=20 > I am working on a proposal (and proof-of-concept) machine readable > Maintainers.txt format, and a GetMaintainer.py script, based on the > format used by QEMU. >=20 > One of the key features of that format is the F: tag, which specifes a > filesytem path (with wildcard support). >=20 > While this is just an RFC in progress (to be sent out later in week), > if you could take that into account, and figure out which paths > correspond to which areas of responsibility, that would make a test > run of the script much easier. >=20 > For my part, I would suggest adding (not just for MdeModulePkg) > F: */ARM/* > F: */AARCH64/* > as maintained by myself and Ard. >=20 > Best Regards, >=20 > Leif >=20 > On Mon, Jun 10, 2019 at 08:06:23AM +0000, Wu, Hao A wrote: > > Hello all, > > > > Driven by the issue raised and discussions with thread: > > https://edk2.groups.io/g/devel/topic/31907735#42076 > > > > This RFC proposal is raised to work out a fine-grained review ownership > > for MdeModulePkg. > > > > The goal is to update the 'MdeModulePkg' section in file Maintainers.tx= t > > to resemble the format like the 'OvmfPkg' section. Several reviewers wi= ll > > be listed to take the ownership to review patches for a specific featur= e > > in the package. > > > > In order to get the list of reviewers, a 2-step process will be adopted= : > > 1. Work out a list that contains major features in MdeModulePkg. > > 2. Call for owners for every item in the list. > > > > For 1, a coarse feature list is: > > Acpi > > Bds > > Capsule > > Compress > > Console > > Core (PeiCore, DxeCore, PiSmmCore, etc. Mainly content in > MdeModulePkg/Core/ folder) > > Device (peripheral & storage) > > Disk > > EBC > > HII > > MemoryManagement (include memory test, memory allocation, memory > profile, etc.) > > PCD > > PCI bus > > Reset > > S3 (including LockBox) > > SMBIOS > > SMM > > Status Code > > UI > > Variable > > Misc (all the components that do not fit in the above items) > > > > Once we think the granularity of the above list is fine and there is no > > significant feature missing, I will update such list to include the > > modules that belong to a specific feature. So adjustments can be done t= o > > work out the final feature list. > > > > The proposal here is far from mature, so any feedback/suggestion will b= e > > appreciated. > > > > > > Best Regards, > > Hao Wu > > > >