On 08/08/18 18:05, Carsey, Jaben wrote:
> I have a question:
> How do we know that no platforms use these functions

We don't.

> given that not all of everyone's platforms are stored in the same place?

The general idea in open source development is that, when a contributor
modifies central / infrastructure code, they do their best to grep the
tree for possible client sites, and to update those sites as well, in a
well-structured patch set. Then they CC the maintainers of those client
sites too. (It's not necessary that they be able to *test* all that
client code too, but the initial effort should be put in, and the
maintainers should be notified, for both review's and testing's sake.)

With out-of-tree client sites, the contributor can't do much, beyond
posting the patches publicly. Out-of-tree consumers (downstreams) are
welcome to:

(a) upstream their platforms to the main tree, so contributors can see
and modify them at once,
(b) monitor the mailing list diligently for possibly intrusive changes,
and request changes / delays.

I realize (a) doesn't really work here, because we have a separate
edk2-platforms tree (maybe yet another edk2-platforms-osi too?) I'm not
qualified to comment on whether that's a good idea or not; suffice it to
say that, if someone wanted to evict OvmfPkg or ArmVirtPkg from the core
edk2 tree, I'd push back very hard. :)

OTOH, in the specific case, we can consider the following a replacement
for (a):

(c) participate in the standardization process (the working groups) and
influence the reference implementation through those.

> I agree with Leif on timing; I really like cleanup.

I too agree that this should go in after the quiet period.

Thanks
Laszlo

> 
> -Jaben
> 
>> -----Original Message-----
>> From: edk2-devel [mailto:[email protected]] On Behalf Of
>> Leif Lindholm
>> Sent: Wednesday, August 08, 2018 7:55 AM
>> To: Zhang, Shenglei <[email protected]>
>> Cc: [email protected]; Dong, Eric <[email protected]>; Zeng, Star
>> <[email protected]>
>> Subject: Re: [edk2] [PATCH 00/26] MdeModulePkg Remove redundant
>> functions
>>
>> Eric, Star,
>>
>> On Wed, Aug 08, 2018 at 04:46:46PM +0800, shenglei wrote:
>>> A lot of redundant functions which are never calld have been removed.I
>> manually
>>> search these fuctions in source files to make sure that they are not used
>> elsewhere.
>>> Also the MdeModulePkg was built to ensure that.
>>
>> I have no objection to this set, but it is quite invasive.
>> So can we please ensure it does not get pushed until after the 201808
>> stable tag has been made? (Mike has just announced the quiet period.)
>>
>> Best Regards,
>>                                                                              
>>                                                       Leif
>>
>>
>>> shenglei (26):
>>>   MdeModulePkg CapsuleApp: Remove a redundant function
>>>   MdeModulePkg UiApp: Remove redundant functions
>>>   MdeModulePkg AtaAtapiPassThru: Remove redundant functions
>>>   MdeModulePkg EhciDxe: Remove redundant functions
>>>   MdeModulePkg NvmExpressDxe: Remove redundant functions
>>>   MdeModulePkg PciBusDxe: Remove redundant functions
>>>   MdeModulePkg SdMmcPciHcDxe: Remove redundant functions
>>>   MdeModulePkg UhciPei: Remove redundant functions
>>>   MdeModulePkg XhciDxe: Remove redundant functions
>>>   MdeModulePkg XhciPei: Remove redundant functions
>>>   MdeModulePkg UfsBlockIoPei: Remove redundant functions
>>>   MdeModulePkg UfsPassThruDxe: Remove redundant functions
>>>   MdeModulePkg UsbBotPei: Remove redundant functions
>>>   MdeModulePkg UsbBusDxe: Remove redundant functions
>>>   MdeModulePkg UsbBusPei: Remove redundant functions
>>>   MdeModulePkg Core/Dxe: Remove redundant functions
>>>   MdeModulePkg PiSmmCore: Remove redundant functions
>>>   MdeModulePkg Ps2KeyboardDxe: Remove a redundant function
>>>   MdeModulePkg EmmcBlockIoPei: Remove a redundant function
>>>   MdeModulePkg SdBlockIoPei: Remove a redundant function
>>>   MdeModulePkg TerminalDxe: Remove a redundant function
>>>   MdeModulePkg HiiDatabaseDxe: Remove a redundant function
>>>   MdeModulePkg Ip4Dxe: Remove a redundant function
>>>   MdeModulePkg IScsiDxe: Remove a redundant function
>>>   MdeModulePkg Tcp4Dxe: Remove redundant functions
>>>   MdeModulePkg SetupBrowserDxe: Remove a redundant function
>>>
>>>  .../Application/CapsuleApp/CapsuleDump.c      |  31 ---
>>>  MdeModulePkg/Application/UiApp/FrontPage.c    |  40 ---
>>>  MdeModulePkg/Application/UiApp/Ui.h           |  30 --
>>>  .../Bus/Ata/AtaAtapiPassThru/AhciMode.c       | 104 -------
>>>  .../Bus/Ata/AtaAtapiPassThru/IdeMode.c        | 257 ------------------
>>>  .../Bus/Isa/Ps2KeyboardDxe/Ps2KbdCtrller.c    |  26 --
>>>  .../Bus/Isa/Ps2KeyboardDxe/Ps2Keyboard.h      |  12 -
>>>  MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.c      |  27 --
>>>  MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.h      |  11 -
>>>  MdeModulePkg/Bus/Pci/EhciDxe/EhciReg.c        |  44 ---
>>>  .../Bus/Pci/NvmExpressDxe/NvmExpressHci.c     | 110 --------
>>>  .../Bus/Pci/PciBusDxe/PciDeviceSupport.c      |  80 ------
>>>  .../Bus/Pci/PciBusDxe/PciDeviceSupport.h      |  17 --
>>>  MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c        |  41 ---
>>>  MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.h        |  21 --
>>>  MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdDevice.c | 107 --------
>>>  MdeModulePkg/Bus/Pci/UhciPei/DmaMem.c         |  22 --
>>>  MdeModulePkg/Bus/Pci/UhciPei/UhcPeim.c        | 125 ---------
>>>  MdeModulePkg/Bus/Pci/UhciPei/UhcPeim.h        |  78 ------
>>>  MdeModulePkg/Bus/Pci/XhciDxe/XhciReg.c        |  66 -----
>>>  MdeModulePkg/Bus/Pci/XhciDxe/XhciReg.h        |  28 --
>>>  MdeModulePkg/Bus/Pci/XhciPei/UsbHcMem.c       |  24 --
>>>  MdeModulePkg/Bus/Pci/XhciPei/XhcPeim.c        |  22 --
>>>  MdeModulePkg/Bus/Pci/XhciPei/XhciReg.h        |  14 -
>>>  .../Bus/Sd/EmmcBlockIoPei/EmmcHcMem.c         |  24 --
>>>  MdeModulePkg/Bus/Sd/SdBlockIoPei/SdHcMem.c    |  24 --
>>>  .../Bus/Ufs/UfsBlockIoPei/UfsBlockIoPei.c     | 101 -------
>>>  MdeModulePkg/Bus/Ufs/UfsBlockIoPei/UfsHcMem.c |  24 --
>>>  MdeModulePkg/Bus/Ufs/UfsBlockIoPei/UfsHci.c   | 180 ------------
>>>  .../Bus/Ufs/UfsPassThruDxe/UfsPassThruHci.c   |  49 ----
>>>  MdeModulePkg/Bus/Usb/UsbBotPei/PeiUsbLib.c    | 190 -------------
>>>  MdeModulePkg/Bus/Usb/UsbBotPei/PeiUsbLib.h    |  98 -------
>>>  MdeModulePkg/Bus/Usb/UsbBusDxe/UsbHub.c       |  68 -----
>>>  MdeModulePkg/Bus/Usb/UsbBusDxe/UsbUtility.c   | 146 ----------
>>>  MdeModulePkg/Bus/Usb/UsbBusDxe/UsbUtility.h   | 114 --------
>>>  MdeModulePkg/Bus/Usb/UsbBusPei/HubPeim.c      |  39 ---
>>>  MdeModulePkg/Bus/Usb/UsbBusPei/HubPeim.h      |  18 --
>>>  MdeModulePkg/Bus/Usb/UsbBusPei/PeiUsbLib.c    |  77 ------
>>>  MdeModulePkg/Bus/Usb/UsbBusPei/PeiUsbLib.h    |  35 ---
>>>  MdeModulePkg/Core/Dxe/DxeMain.h               |  13 -
>>>  MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c       |  22 --
>>>  MdeModulePkg/Core/Dxe/Mem/HeapGuard.c         |  78 ------
>>>  MdeModulePkg/Core/PiSmmCore/HeapGuard.c       | 166 -----------
>>>  .../Core/PiSmmCore/MemoryAttributesTable.c    | 131 ---------
>>>  MdeModulePkg/Core/PiSmmCore/Page.c            | 121 ---------
>>>  .../Universal/Console/TerminalDxe/Terminal.h  |  12 -
>>>  .../Console/TerminalDxe/TerminalConIn.c       |  25 --
>>>  .../Universal/HiiDatabaseDxe/ConfigRouting.c  |  47 ----
>>>  .../Universal/Network/IScsiDxe/IScsiProto.c   |  31 ---
>>>  .../Universal/Network/Ip4Dxe/Ip4Config2Impl.c |  16 --
>>>  .../Universal/Network/Tcp4Dxe/SockImpl.c      |  35 ---
>>>  .../Universal/Network/Tcp4Dxe/SockInterface.c |  41 ---
>>>  .../Universal/Network/Tcp4Dxe/Socket.h        |  32 ---
>>>  .../Universal/Network/Tcp4Dxe/Tcp4Option.c    |  28 --
>>>  .../Universal/Network/Tcp4Dxe/Tcp4Option.h    |  15 -
>>>  .../Universal/SetupBrowserDxe/IfrParse.c      |  33 ---
>>>  56 files changed, 3370 deletions(-)
>>>
>>> --
>>> 2.18.0.windows.1
>>>
>>> _______________________________________________
>>> edk2-devel mailing list
>>> [email protected]
>>> https://lists.01.org/mailman/listinfo/edk2-devel
>> _______________________________________________
>> edk2-devel mailing list
>> [email protected]
>> https://lists.01.org/mailman/listinfo/edk2-devel
> _______________________________________________
> edk2-devel mailing list
> [email protected]
> https://lists.01.org/mailman/listinfo/edk2-devel
> 

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to