[if !mso]> [if !mso]>

RE: [Edk2 Dev] Possible spec conformance issues in the DXE Core Debug table implementation

Subject: RE: [Edk2 Dev] Possible spec conformance issues in the DXE Core Debug table implementation

From: Huang Qing <qing.huang@intel.com>

To: dev@edk2.tianocore.org

Date: 2008-09-28 00:12:58

Andrew & Roy,

            Thanks a lot for catching this issue. I have checked in to update DxeCore in Edkr6051:

  • EFI_DEBUG_IMAGE_INFO_TABLE_MODIFIED bit is now set once an entry is inserted or deleted successfully.
  • The EFI_DEBUG_IMAGE_INFO_TABLE_HEADER.TableSize now means the number of valid entries in EFI_DEBUG_IMAGE_INFO_TABLE_HEADER.Table. The total number of entries is tracked by another new global variable mMaxTableEntries.

Please review in case the new code flow is incorrect.

                                                                                                                  

Thanks & Best Regards,

Huang, Qing


From: Andrew J. Fish [mailto:afish@apple.com]
Sent: Friday, September 26, 2008 6:58 AM
To: dev@edk2.tianocore.org
Subject: [Edk2 Dev] Possible spec conformance issues in the DXE Core Debug table implementation

 

I was writting some code to dump out the debug table and I noticed the following:

 

EFI_DEBUG_IMAGE_INFO_TABLE_MODIFIED is not implemented per the UEFI spec in the DXE core. It is never set, and the spec says any one who updates the table should set this bit.

 

Also EFI_DEBUG_IMAGE_INFO_TABLE_HEADER.TableSize seems to imply it is the number of valid entries. It is actually the size of the array and it seems you have to check the EFI_DEBUG_IMAGE_INFO.NormalImage pointer for null to skip entries. This part is not in the specification.

 

I wrote the code by reading the EFI specification and these were the two issues I ran into. 

 

 

Andrew Fish

Work iPhone: 360-259-7562