From: "Kinney, Michael D" <michael.d.kinney@intel.com>
To: Laszlo Ersek <lersek@redhat.com>,
edk2-devel-01 <edk2-devel@ml01.01.org>,
"Kinney, Michael D" <michael.d.kinney@intel.com>
Cc: "Ni, Ruiyu" <ruiyu.ni@intel.com>, Tim He <tim.he@intel.com>,
"Tian, Feng" <feng.tian@intel.com>,
"Dong, Eric" <eric.dong@intel.com>,
Cecil Sheng <cecil.sheng@hpe.com>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
"Justen, Jordan L" <jordan.l.justen@intel.com>,
"Gao, Liming" <liming.gao@intel.com>,
"Bi, Dandan" <dandan.bi@intel.com>,
"Wu, Jiaxin" <jiaxin.wu@intel.com>, Gary Lin <glin@suse.com>,
"Zeng, Star" <star.zeng@intel.com>,
"Daryl McDaniel" <edk2-lists@mc2research.org>,
"Carsey, Jaben" <jaben.carsey@intel.com>,
"Fu, Siyuan" <siyuan.fu@intel.com>,
"Fan, Jeff" <jeff.fan@intel.com>,
"Zhang, Chao B" <chao.b.zhang@intel.com>,
"Wei, David" <david.wei@intel.com>
Subject: Re: [PATCH 05/47] MdePkg/Include/Base.h: introduce the ARRAY_SIZE() function-like macro
Date: Thu, 27 Oct 2016 02:21:25 +0000 [thread overview]
Message-ID: <E92EE9817A31E24EB0585FDF735412F56483BF5E@ORSMSX113.amr.corp.intel.com> (raw)
In-Reply-To: <5cd1b4e5-a1ec-47e7-3e99-95bb1a55d6e9@redhat.com>
With that change:
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Mike
> -----Original Message-----
> From: Laszlo Ersek [mailto:lersek@redhat.com]
> Sent: Wednesday, October 26, 2016 3:26 PM
> To: Kinney, Michael D <michael.d.kinney@intel.com>; edk2-devel-01 <edk2-
> devel@ml01.01.org>
> Cc: Ni, Ruiyu <ruiyu.ni@intel.com>; Tim He <tim.he@intel.com>; Tian, Feng
> <feng.tian@intel.com>; Dong, Eric <eric.dong@intel.com>; Cecil Sheng
> <cecil.sheng@hpe.com>; Ard Biesheuvel <ard.biesheuvel@linaro.org>; Justen, Jordan L
> <jordan.l.justen@intel.com>; Gao, Liming <liming.gao@intel.com>; Bi, Dandan
> <dandan.bi@intel.com>; Wu, Jiaxin <jiaxin.wu@intel.com>; Gary Lin <glin@suse.com>;
> Zeng, Star <star.zeng@intel.com>; Daryl McDaniel <edk2-lists@mc2research.org>; Carsey,
> Jaben <jaben.carsey@intel.com>; Fu, Siyuan <siyuan.fu@intel.com>; Fan, Jeff
> <jeff.fan@intel.com>; Zhang, Chao B <chao.b.zhang@intel.com>; Wei, David
> <david.wei@intel.com>
> Subject: Re: [edk2] [PATCH 05/47] MdePkg/Include/Base.h: introduce the ARRAY_SIZE()
> function-like macro
>
> On 10/27/16 00:13, Kinney, Michael D wrote:
> > Hi Laszlo,
> >
> > One comment inline below.
> >
> > Mike
> >
> >> -----Original Message-----
> >> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Laszlo Ersek
> >> Sent: Wednesday, October 26, 2016 12:04 PM
> >> To: edk2-devel-01 <edk2-devel@ml01.01.org>
> >> Cc: Ni, Ruiyu <ruiyu.ni@intel.com>; Tim He <tim.he@intel.com>; Tian, Feng
> >> <feng.tian@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com>; Dong, Eric
> >> <eric.dong@intel.com>; Cecil Sheng <cecil.sheng@hpe.com>; Ard Biesheuvel
> >> <ard.biesheuvel@linaro.org>; Justen, Jordan L <jordan.l.justen@intel.com>; Gao,
> Liming
> >> <liming.gao@intel.com>; Bi, Dandan <dandan.bi@intel.com>; Wu, Jiaxin
> >> <jiaxin.wu@intel.com>; Gary Lin <glin@suse.com>; Zeng, Star <star.zeng@intel.com>;
> >> Daryl McDaniel <edk2-lists@mc2research.org>; Carsey, Jaben <jaben.carsey@intel.com>;
> >> Fu, Siyuan <siyuan.fu@intel.com>; Fan, Jeff <jeff.fan@intel.com>; Zhang, Chao B
> >> <chao.b.zhang@intel.com>; Wei, David <david.wei@intel.com>
> >> Subject: [edk2] [PATCH 05/47] MdePkg/Include/Base.h: introduce the ARRAY_SIZE()
> >> function-like macro
> >>
> >> Several modules use ARRAY_SIZE() already; centralize the definition. (The
> >> module-specific macro definitions are guarded by #ifndef directives at
> >> this point.)
> >>
> >> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> >> Cc: Cecil Sheng <cecil.sheng@hpe.com>
> >> Cc: Chao Zhang <chao.b.zhang@intel.com>
> >> Cc: Dandan Bi <dandan.bi@intel.com>
> >> Cc: Daryl McDaniel <edk2-lists@mc2research.org>
> >> Cc: David Wei <david.wei@intel.com>
> >> Cc: Eric Dong <eric.dong@intel.com>
> >> Cc: Feng Tian <feng.tian@intel.com>
> >> Cc: Gary Lin <glin@suse.com>
> >> Cc: Jaben Carsey <jaben.carsey@intel.com>
> >> Cc: Jeff Fan <jeff.fan@intel.com>
> >> Cc: Jiaxin Wu <jiaxin.wu@intel.com>
> >> Cc: Jordan Justen <jordan.l.justen@intel.com>
> >> Cc: Liming Gao <liming.gao@intel.com>
> >> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> >> Cc: Ruiyu Ni <ruiyu.ni@intel.com>
> >> Cc: Siyuan Fu <siyuan.fu@intel.com>
> >> Cc: Star Zeng <star.zeng@intel.com>
> >> Cc: Tim He <tim.he@intel.com>
> >> Contributed-under: TianoCore Contribution Agreement 1.0
> >> Signed-off-by: Laszlo Ersek <lersek@redhat.com>
> >> ---
> >> MdePkg/Include/Base.h | 13 +++++++++++++
> >> 1 file changed, 13 insertions(+)
> >>
> >> diff --git a/MdePkg/Include/Base.h b/MdePkg/Include/Base.h
> >> index c66614846488..8bdb257e37bd 100644
> >> --- a/MdePkg/Include/Base.h
> >> +++ b/MdePkg/Include/Base.h
> >> @@ -1211,5 +1211,18 @@ typedef UINTN RETURN_STATUS;
> >> #define RETURN_ADDRESS(L) ((VOID *) 0)
> >> #endif
> >>
> >> +/**
> >> + Return the number of elements in an array.
> >> +
> >> + @param Array An object of array type. Array is only used as an argument to
> >> + the sizeof operator, therefore Array is never evaluated. The
> >> + caller is responsible for ensuring that Array's type is not
> >> + incomplete; that is, Array must have known constant size.
> >> +
> >> + @return The number of elements in Array. The result has type UINTN.
> >> +
> >> +**/
> >> +#define ARRAY_SIZE(Array) (sizeof (Array) / sizeof (Array)[0])
> >
> > I think adding one extra set of () makes this clearer:
> >
> > #define ARRAY_SIZE(Array) (sizeof (Array) / sizeof ((Array)[0]))
>
> Sure, will do.
>
> Thanks!
> Laszlo
>
> >> +
> >> #endif
> >>
> >> --
> >> 2.9.2
> >>
> >>
> >> _______________________________________________
> >> edk2-devel mailing list
> >> edk2-devel@lists.01.org
> >> https://lists.01.org/mailman/listinfo/edk2-devel
next prev parent reply other threads:[~2016-10-27 2:21 UTC|newest]
Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-26 19:04 [PATCH 00/47] edk2: centralize and adopt ARRAY_SIZE() Laszlo Ersek
2016-10-26 19:04 ` [PATCH 01/47] MdeModulePkg/RegularExpressionDxe: guard the definition of ARRAY_SIZE Laszlo Ersek
2016-10-26 19:04 ` [PATCH 02/47] NetworkPkg/IpsecConfig: " Laszlo Ersek
2016-10-27 1:59 ` Fu, Siyuan
2016-10-27 2:30 ` Wu, Jiaxin
2016-10-26 19:04 ` [PATCH 03/47] OvmfPkg/PlatformBootManagerLib: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 04/47] OvmfPkg/XenBusDxe: " Laszlo Ersek
2016-10-27 3:15 ` Gary Lin
2016-10-26 19:04 ` [PATCH 05/47] MdePkg/Include/Base.h: introduce the ARRAY_SIZE() function-like macro Laszlo Ersek
2016-10-26 22:13 ` Kinney, Michael D
2016-10-26 22:25 ` Laszlo Ersek
2016-10-27 2:21 ` Kinney, Michael D [this message]
2016-10-26 19:04 ` [PATCH 06/47] MdeModulePkg/RegularExpressionDxe: remove module-local ARRAY_SIZE macro Laszlo Ersek
2016-10-26 19:04 ` [PATCH 07/47] NetworkPkg/IpsecConfig: " Laszlo Ersek
2016-10-27 1:59 ` Fu, Siyuan
2016-10-27 2:31 ` Wu, Jiaxin
2016-10-26 19:04 ` [PATCH 08/47] OvmfPkg/PlatformBootManagerLib: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 09/47] OvmfPkg/XenBusDxe: " Laszlo Ersek
2016-10-27 3:16 ` Gary Lin
2016-10-26 19:04 ` [PATCH 10/47] ArmVirtPkg/NorFlashQemuLib: rebase to ARRAY_SIZE() Laszlo Ersek
2016-10-27 7:30 ` Ard Biesheuvel
2016-10-26 19:04 ` [PATCH 11/47] DuetPkg/DuetBdsLib: " Laszlo Ersek
2016-10-27 8:16 ` Laszlo Ersek
2016-10-27 9:04 ` Ni, Ruiyu
2016-10-27 9:12 ` Laszlo Ersek
2016-10-26 19:04 ` [PATCH 12/47] EdkCompatibilityPkg/FrameworkHiiOnUefiHiiThunk: " Laszlo Ersek
2016-10-27 1:20 ` Gao, Liming
2016-10-26 19:04 ` [PATCH 13/47] EdkCompatibilityPkg/Sample/Tools: " Laszlo Ersek
2016-10-27 1:20 ` Gao, Liming
2016-10-26 19:04 ` [PATCH 14/47] FatPkg/EnhancedFatDxe: " Laszlo Ersek
2016-10-27 1:53 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 15/47] IntelFrameworkModulePkg/LegacyBootManagerLib: " Laszlo Ersek
2016-10-27 3:09 ` Fan, Jeff
2016-10-26 19:04 ` [PATCH 16/47] IntelFrameworkModulePkg/BdsDxe: " Laszlo Ersek
2016-10-27 3:12 ` Fan, Jeff
2016-10-26 19:04 ` [PATCH 17/47] MdeModulePkg/MemoryProfileInfo: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 18/47] MdeModulePkg/PciBusDxe: " Laszlo Ersek
2016-10-27 1:53 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 19/47] MdeModulePkg/PciHostBridgeDxe: " Laszlo Ersek
2016-10-27 1:49 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 20/47] MdeModulePkg/UsbBusDxe: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 21/47] MdeModulePkg/Core/Dxe: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 22/47] MdeModulePkg/Core/PiSmmCore: " Laszlo Ersek
2016-10-27 2:20 ` Kinney, Michael D
2016-10-26 19:04 ` [PATCH 23/47] MdeModulePkg/BootMaintenanceManagerUiLib: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 24/47] MdeModulePkg/BootManagerUiLib: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 25/47] MdeModulePkg/UefiBootManagerLib: " Laszlo Ersek
2016-10-27 1:50 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 26/47] MdeModulePkg/VarCheckHiiLib: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 27/47] MdeModulePkg/Logo: " Laszlo Ersek
2016-10-27 1:53 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 28/47] MdeModulePkg/BdsDxe: " Laszlo Ersek
2016-10-27 1:50 ` Ni, Ruiyu
2016-10-27 1:50 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 29/47] MdeModulePkg/DisplayEngineDxe: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 30/47] MdeModulePkg/EbcDxe: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 31/47] MdeModulePkg/Tcp4Dxe: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 32/47] MdeModulePkg/Variable/RuntimeDxe: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 33/47] NetworkPkg/IScsiDxe: " Laszlo Ersek
2016-10-27 1:59 ` Fu, Siyuan
2016-10-26 19:04 ` [PATCH 34/47] NetworkPkg/TcpDxe: " Laszlo Ersek
2016-10-27 2:00 ` Fu, Siyuan
2016-10-27 2:31 ` Wu, Jiaxin
2016-10-26 19:04 ` [PATCH 35/47] Nt32Pkg/WinNtSerialIoDxe: " Laszlo Ersek
2016-10-27 1:49 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 36/47] OptionRomPkg/AtapiPassThruDxe: " Laszlo Ersek
2016-10-27 1:47 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 37/47] OvmfPkg/QemuBootOrderLib: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 38/47] OvmfPkg/QemuVideoDxe: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 39/47] PerformancePkg/Dp_App: " Laszlo Ersek
2016-10-26 19:04 ` [PATCH 40/47] SecurityPkg/AuthVariableLib: " Laszlo Ersek
2016-10-27 9:07 ` Laszlo Ersek
2016-10-27 9:09 ` Zeng, Star
2016-10-27 9:12 ` Laszlo Ersek
2016-10-28 8:36 ` Zhang, Chao B
2016-10-28 10:20 ` Laszlo Ersek
2016-10-26 19:04 ` [PATCH 41/47] ShellPkg/UefiDpLib: " Laszlo Ersek
2016-10-27 1:47 ` Ni, Ruiyu
2016-10-26 19:04 ` [PATCH 42/47] ShellPkg/UefiShellLevel2CommandsLib: " Laszlo Ersek
2016-10-27 1:47 ` Ni, Ruiyu
2016-10-26 19:05 ` [PATCH 43/47] Vlv2TbltDevicePkg/FirmwareUpdate: " Laszlo Ersek
2016-10-27 7:08 ` Guo, Mang
2016-10-26 19:05 ` [PATCH 44/47] Vlv2TbltDevicePkg/PlatformInitPei: " Laszlo Ersek
2016-10-27 7:10 ` Guo, Mang
2016-10-26 19:05 ` [PATCH 45/47] Vlv2TbltDevicePkg/PlatformPei: " Laszlo Ersek
2016-10-27 7:12 ` Guo, Mang
2016-10-26 19:05 ` [PATCH 46/47] Vlv2TbltDevicePkg/PlatformSetupDxe: " Laszlo Ersek
2016-10-27 7:14 ` Guo, Mang
2016-10-26 19:05 ` [PATCH 47/47] Vlv2TbltDevicePkg/SmBiosMiscDxe: " Laszlo Ersek
2016-10-27 7:14 ` Guo, Mang
2016-10-26 21:48 ` [PATCH 00/47] edk2: centralize and adopt ARRAY_SIZE() Carsey, Jaben
2016-10-27 1:17 ` Tian, Feng
2016-10-27 2:37 ` Zeng, Star
2016-10-27 4:43 ` Gary Lin
2016-10-27 7:52 ` Laszlo Ersek
2016-10-27 6:05 ` Jordan Justen
2016-10-27 8:49 ` Laszlo Ersek
2016-10-27 9:27 ` Laszlo Ersek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E92EE9817A31E24EB0585FDF735412F56483BF5E@ORSMSX113.amr.corp.intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox