From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (NAM11-DM6-obe.outbound.protection.outlook.com [40.92.19.90]) by mx.groups.io with SMTP id smtpd.web10.18107.1586462771830975146 for ; Thu, 09 Apr 2020 13:06:12 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@outlook.com header.s=selector1 header.b=BA3Z9fMM; spf=pass (domain: outlook.com, ip: 40.92.19.90, mailfrom: michael.kubacki@outlook.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f7Q4l5tFDrWwYfaNO+Ov3WZMU/8xn5a4MIjLEbPyiPNNVgUyVG9IGZJkbmz88QayzDShooZD5Ve+l6O6AQyDu+W575PVu/8EB4/skBQtCJYAHLclLM+i3buLyauT59W9CVSeHNJFW2j3arQmoVHVBAPkb1/77vEoG4B1FU4x2eIbFNh03/Gi1F9vQQj6rbsHnE3n/b4qWK1spf/O27o3/jUHQ5EDRzue/8wf0ggWynedI2Nsad8bfRWQ5DKC2s4EfZ3W5wxRfFkLowbaobiQVq+xKnVAv7S9eqyb4uUQx3NPMgb58krukKo0WnZu96OlOSqY+6pKWEFieENV8s7o2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PtuJqV/C3HxlgWLVb/+tJqIXA2KsM8thYE7IaPEC1hk=; b=FT3fNgiU0e7nNtzJ0kMaPRBevuE+5DvvD7FDpNu1f9dDztGlj8cXJ8eRiIkhiyJ2yOjtascOeZXRyPrEUvFjbIXW5U3zRRng4ATKbJpnJ/KnFxqXuy7D0hYfUGH7+yFCSud34zT+iNSSni8YGZdWKnH27jZSWJ6JS0FpOx68Wn0Ftll0VoQRZyTwYQ8+R5cZSAxg2vI3S6cUmJGl1mt7tbcxZsHn/UvhnO8jXXylROFU0cm4595aBoqmWH7h/Y6v0Ju+w9gNyxZqyU9zwxv1cWk4tSMu/c9UKg3pgC76julOFtiPQKpDbuEBS0Z9CWem8f1yNd0CsSg7HKvUXlFgXw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=outlook.com; dmarc=pass action=none header.from=outlook.com; dkim=pass header.d=outlook.com; arc=none 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:X-MS-Exchange-SenderADCheck; bh=PtuJqV/C3HxlgWLVb/+tJqIXA2KsM8thYE7IaPEC1hk=; b=BA3Z9fMMlrnP+XUiMDSw4MyYVe2gkj4tSgDFx827bcoKVpQ8vnSpnD8/0VuzoTmPZX2JoRvxBP7oDSFi1qEkzte0gJVhqFzEGSb/hdUgbDXhmetBfWUCH7+f0rSmLeI5DvlG/VdbiQNrI4yq4QJfnaFJUVbsJFyW1UGgkiC5oyAOx0mcCe7Q9qn5TSjhnKRaYD1VKF1po91Y7Bv3idTgSSPib1kqT5Mhb7svbP1F+dAv91VpG06ydhHod5SGPKTYFfCvWtK4v3QVoe8UEJcV/gsf9wNgQYLLEYFvImqJ6gx6USUb+Wu557vpSR4s+LEM1rAEmw2+h3wiT2CugvPmZA== Received: from BN8NAM11FT019.eop-nam11.prod.protection.outlook.com (2a01:111:e400:fc4b::4d) by BN8NAM11HT253.eop-nam11.prod.protection.outlook.com (2a01:111:e400:fc4b::393) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.18; Thu, 9 Apr 2020 20:06:10 +0000 Received: from DM5PR07MB3435.namprd07.prod.outlook.com (2a01:111:e400:fc4b::44) by BN8NAM11FT019.mail.protection.outlook.com (2a01:111:e400:fc4b::158) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.18 via Frontend Transport; Thu, 9 Apr 2020 20:06:10 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:3FBCB68FED21719C9CDA00E69C550095391315A40493D9185A999C7A66C2F760;UpperCasedChecksum:C27DF5E8FC29925648CFBCC2285F88BBCAB5E285C8E0E42CA6736503100FD83A;SizeAsReceived:7831;Count:47 Received: from DM5PR07MB3435.namprd07.prod.outlook.com ([fe80::801e:fde0:da7d:191f]) by DM5PR07MB3435.namprd07.prod.outlook.com ([fe80::801e:fde0:da7d:191f%6]) with mapi id 15.20.2900.015; Thu, 9 Apr 2020 20:06:10 +0000 From: "Michael Kubacki" To: devel@edk2.groups.io Cc: Chao Zhang , Dandan Bi , Hao A Wu , Jian J Wang , Liming Gao , Michael D Kinney , Ray Ni , Sean Brogan Subject: [PATCH v1 0/7] Add linked list iteration macros to BaseLib.h Date: Thu, 9 Apr 2020 13:05:07 -0700 Message-ID: X-Mailer: git-send-email 2.16.3.windows.1 X-ClientProxiedBy: MWHPR10CA0062.namprd10.prod.outlook.com (2603:10b6:300:2c::24) To DM5PR07MB3435.namprd07.prod.outlook.com (2603:10b6:4:67::14) Return-Path: michael.kubacki@outlook.com X-Microsoft-Original-Message-ID: <20200409200514.32796-1-michael.kubacki@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (2001:4898:80e8:7:9d66:7f00:4b99:db3e) by MWHPR10CA0062.namprd10.prod.outlook.com (2603:10b6:300:2c::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.15 via Frontend Transport; Thu, 9 Apr 2020 20:06:09 +0000 X-Mailer: git-send-email 2.16.3.windows.1 X-Microsoft-Original-Message-ID: <20200409200514.32796-1-michael.kubacki@outlook.com> X-TMN: [6Kj5q/FPtHsatuB/d+dgfduIs2vV/Dv7BS/JCrF+BZ1kBUSXRUwaJ3j7x7aESn4o] X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 47 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: ee9bb303-ee82-43b4-e64f-08d7dcc17245 X-MS-TrafficTypeDiagnostic: BN8NAM11HT253: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3bOIBaZ30Eq0uZfXvauMLzSk6wTv+Tm/JBSC7zIQ97VAGH6QYJ9pySeg6Bez6RwxW4qPD7/QjcghfdXGO+C9U8mhxI/YljhR9im909Kelbk5qfS5gUwWOcWa11LjQtvlQEx29sssjT8Berz2npXqcD9jyXAN6KH9DN27s5TgZJSNYZ7dan3BLJYSfIlz/ci4EESoCUAvlLIhvNDcopqpg2b3Rw2rYWpRHXuKIkDaiEI= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:0;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR07MB3435.namprd07.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:;DIR:OUT;SFP:1901; X-MS-Exchange-AntiSpam-MessageData: eU5eXSuG4nBz/8HdhxGLtO7b4dSgbyGHD9WfV3AxtBOp72FqskyvVO21kDt5x9l75kGTKB45oPyKLfFjAreHdzE2plJP7QCcv5w9S7gcTcFlyY5nv6xhbEZDaWT+ElPpB4ihx9ZlkM+PdLPOG9IRO1e4yC1dSDoN3olhuxfa0/fXmjLapb/LgBwNn26rXfeIa3rdQsUtfzJ6L0ZUzif4Jg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ee9bb303-ee82-43b4-e64f-08d7dcc17245 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2020 20:06:10.2545 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8NAM11HT253 Content-Type: text/plain From: Michael Kubacki REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1959 The macros EFI_LIST_FOR_EACH and EFI_LIST_FOR_EACH_SAFE have been duplicated across several drivers such as: * EhciPei * EhciDxe * HddPasswordDxe * RamDiskDxe * UfsPassThruDxe * XhciDxe These macros have proven useful and established a commonly used pattern for linked list iteration. This patch series consolidates the definitions to a single definition in BaseLib.h so they are maintained alongside other pre-existing generic linked list macros and functions. Note: Another commonly used generic linked list macro is EFI_LIST_CONTAINER. I'm considering consolidating that to BaseLib.h as well but that is not done in this patch series since it satisfies a separate use case than the iteration macros and the change can be made independently. On a separate note, shallow threading might not work on this patch series due to changes made by the SMTP server. Please bear with me while I am investigating if this can be changed. Cc: Chao Zhang Cc: Dandan Bi Cc: Hao A Wu Cc: Jian J Wang Cc: Liming Gao Cc: Michael D Kinney Cc: Ray Ni Cc: Sean Brogan Signed-off-by: Michael Kubacki Michael Kubacki (7): MdePkg/BaseLib: Add linked list iteration macros MdeModulePkg/EhciDxe: Use BaseLib linked list iteration macros MdeModulePkg/EhciPei: Use BaseLib linked list iteration macros MdeModulePkg/XhciDxe: Use BaseLib linked list iteration macros MdeModulePkg/UfsPassThruDxe: Use BaseLib linked list iteration macros MdeModulePkg/RamDiskDxe: Use BaseLib linked list iteration macros SecurityPkg/HddPassword: Use BaseLib linked list iteration macros MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.c | 3 ++- MdeModulePkg/Bus/Pci/EhciDxe/EhciSched.c | 11 ++++---- MdeModulePkg/Bus/Pci/EhciDxe/EhciUrb.c | 5 ++-- MdeModulePkg/Bus/Pci/EhciPei/EhciSched.c | 3 ++- MdeModulePkg/Bus/Pci/EhciPei/EhciUrb.c | 5 ++-- MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c | 9 ++++--- MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.c | 3 ++- MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThruHci.c | 3 ++- MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDriver.c | 3 ++- MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskImpl.c | 9 ++++--- MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskProtocol.c | 5 ++-- SecurityPkg/HddPassword/HddPasswordDxe.c | 13 +++++----- MdeModulePkg/Bus/Pci/EhciDxe/Ehci.h | 15 +---------- MdeModulePkg/Bus/Pci/EhciPei/EhcPeim.h | 15 +---------- MdeModulePkg/Bus/Pci/XhciDxe/Xhci.h | 9 +------ MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.h | 9 +------ MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskImpl.h | 15 +---------- MdePkg/Include/Library/BaseLib.h | 27 ++++++++++++++++++++ SecurityPkg/HddPassword/HddPasswordDxe.h | 7 +---- 19 files changed, 75 insertions(+), 94 deletions(-) -- 2.16.3.windows.1