I know sizeof works same with sizeof () here, I have no preference, that's why 
I gave Reviewed-by before the comment, I just see most of the code are using 
sizeof (), I am not sure whether there is a code standard for it somewhere, I 
guess no.

Anyway, you can make the decision when pushing. :)


Thanks,
Star
-----Original Message-----
From: Laszlo Ersek [mailto:[email protected]] 
Sent: Tuesday, September 12, 2017 5:57 PM
To: Ni, Ruiyu <[email protected]>; Zeng, Star <[email protected]>; 
edk2-devel-01 <[email protected]>
Cc: Ard Biesheuvel <[email protected]>; Dong, Eric 
<[email protected]>; Paulo Alcantara <[email protected]>
Subject: Re: [PATCH 3/5] MdeModulePkg/UdfDxe: replace zero-init of local 
variables with ZeroMem()

On 09/12/17 11:38, Ni, Ruiyu wrote:
> Star,
> Sizeof is an operator, not a function, like + or -. Not having () is ok.

Ugh, just seeing this now :) So what should I do now?

If Star agrees, I would prefer *not* to add the parens. If Star insists, I can 
add them.

Thanks
Laszlo

>> -----Original Message-----
>> From: Zeng, Star
>> Sent: Tuesday, September 12, 2017 4:55 PM
>> To: Laszlo Ersek <[email protected]>; edk2-devel-01 <edk2- 
>> [email protected]>
>> Cc: Ard Biesheuvel <[email protected]>; Dong, Eric 
>> <[email protected]>; Paulo Alcantara <[email protected]>; Ni, Ruiyu 
>> <[email protected]>; Zeng, Star <[email protected]>
>> Subject: RE: [PATCH 3/5] MdeModulePkg/UdfDxe: replace zero-init of 
>> local variables with ZeroMem()
>>
>> Reviewed-by: Star Zeng <[email protected]>
>>
>> BTW: How about to use "sizeof ()" instead of "sizeof"?
>>
>>
>> Thanks,
>> Star
>> -----Original Message-----
>> From: Laszlo Ersek [mailto:[email protected]]
>> Sent: Sunday, September 10, 2017 8:13 AM
>> To: edk2-devel-01 <[email protected]>
>> Cc: Ard Biesheuvel <[email protected]>; Dong, Eric 
>> <[email protected]>; Paulo Alcantara <[email protected]>; Ni, Ruiyu 
>> <[email protected]>; Zeng, Star <[email protected]>
>> Subject: [PATCH 3/5] MdeModulePkg/UdfDxe: replace zero-init of local 
>> variables with ZeroMem()
>>
>> In edk2, initialization of local variables is forbidden, both for 
>> stylistic reasons and because such initialization may generate calls to 
>> compiler intrinsics.
>>
>> For the following initialization in UdfRead():
>>
>>   CHAR16                          FileName[UDF_FILENAME_LENGTH] = { 0 };
>>
>> clang-3.8 generates a memset() call, when building UdfDxe for IA32, 
>> which then fails to link.
>>
>> Replace the initialization with ZeroMem().
>>
>> Do the same to "FilePath" in UdfOpen().
>>
>> Cc: Ard Biesheuvel <[email protected]>
>> Cc: Eric Dong <[email protected]>
>> Cc: Paulo Alcantara <[email protected]>
>> Cc: Ruiyu Ni <[email protected]>
>> Cc: Star Zeng <[email protected]>
>> Contributed-under: TianoCore Contribution Agreement 1.1
>> Signed-off-by: Laszlo Ersek <[email protected]>
>> ---
>>  MdeModulePkg/Universal/Disk/UdfDxe/File.c | 6 ++++--
>>  1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/MdeModulePkg/Universal/Disk/UdfDxe/File.c
>> b/MdeModulePkg/Universal/Disk/UdfDxe/File.c
>> index 8b9339567f8e..e7159ff861f7 100644
>> --- a/MdeModulePkg/Universal/Disk/UdfDxe/File.c
>> +++ b/MdeModulePkg/Universal/Disk/UdfDxe/File.c
>> @@ -174,15 +174,16 @@ UdfOpen (
>>  {
>>    EFI_TPL                     OldTpl;
>>    EFI_STATUS                  Status;
>>    PRIVATE_UDF_FILE_DATA       *PrivFileData;
>>    PRIVATE_UDF_SIMPLE_FS_DATA  *PrivFsData;
>> -  CHAR16                      FilePath[UDF_PATH_LENGTH] = { 0 };
>> +  CHAR16                      FilePath[UDF_PATH_LENGTH];
>>    UDF_FILE_INFO               File;
>>    PRIVATE_UDF_FILE_DATA       *NewPrivFileData;
>>    CHAR16                      *TempFileName;
>>
>> +  ZeroMem (FilePath, sizeof FilePath);
>>    OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
>>
>>    if (This == NULL || NewHandle == NULL || FileName == NULL) {
>>      Status = EFI_INVALID_PARAMETER;
>>      goto Error_Invalid_Params;
>> @@ -322,14 +323,15 @@ UdfRead (
>>    EFI_BLOCK_IO_PROTOCOL           *BlockIo;
>>    EFI_DISK_IO_PROTOCOL            *DiskIo;
>>    UDF_FILE_INFO                   FoundFile;
>>    UDF_FILE_IDENTIFIER_DESCRIPTOR  *NewFileIdentifierDesc;
>>    VOID                            *NewFileEntryData;
>> -  CHAR16                          FileName[UDF_FILENAME_LENGTH] = { 0 };
>> +  CHAR16                          FileName[UDF_FILENAME_LENGTH];
>>    UINT64                          FileSize;
>>    UINT64                          BufferSizeUint64;
>>
>> +  ZeroMem (FileName, sizeof FileName);
>>    OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
>>
>>    if (This == NULL || BufferSize == NULL || (*BufferSize != 0 &&
>>                                               Buffer == NULL)) {
>>      Status = EFI_INVALID_PARAMETER;
>> --
>> 2.14.1.3.gb7cf6e02401b
>>
> 

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

Reply via email to