Skip to content

Releases: microsoft/mu_basecore

release-v2024050001.0.0

03 Dec 01:15
Compare
Choose a tag to compare

What's Changed

  • [Cherry-Pick] MdePkg/SmBios.h: Add new Socket Type for SMBIOS Type4 @ycyp (#1229)
    Change Details
      The patch adds new socket type(Type 4, Offset 32h) for SMBIOS Type4 based on SMBIOS v3.8.0.

    Description

    The patch adds new socket type(Type 4, Offset 32h) for SMBIOS Type4 based on SMBIOS v3.8.0.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?
    • Backport to release branch?

    How This Was Tested

    Build and boot on Intel platforms to make sure no errors or boot hang issue happens.

    Integration Instructions

    N/A




⚠️ Breaking Changes

  • [CHERRY-PICK] Create memory bin override library to allow for more extensive platform customization @cfernald (#1226)
    Change Details
      ## Description

    Cherry-picks the change from this original PR that was dropped in the 2405 rebase.

    #194

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?
    • Backport to release branch?

    How This Was Tested

    Cherry pick from existing change.

    Integration Instructions

    Add the new NULL version of the library to the platform DSC file

    MemoryBinOverrideLib|MdeModulePkg/Library/MemoryBinOverrideLibNull/MemoryBinOverrideLibNull.inf




Full Changelog: dev-v2024050000.2.0...v2024050001.0.0

dev-v2024050001.0.0

03 Dec 01:15
f228651
Compare
Choose a tag to compare

What's Changed

  • [Cherry-Pick] MdePkg/SmBios.h: Add new Socket Type for SMBIOS Type4 @ycyp (#1229)
    Change Details
      The patch adds new socket type(Type 4, Offset 32h) for SMBIOS Type4 based on SMBIOS v3.8.0.

    Description

    The patch adds new socket type(Type 4, Offset 32h) for SMBIOS Type4 based on SMBIOS v3.8.0.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?
    • Backport to release branch?

    How This Was Tested

    Build and boot on Intel platforms to make sure no errors or boot hang issue happens.

    Integration Instructions

    N/A




⚠️ Breaking Changes

  • [CHERRY-PICK] Create memory bin override library to allow for more extensive platform customization @cfernald (#1226)
    Change Details
      ## Description

    Cherry-picks the change from this original PR that was dropped in the 2405 rebase.

    #194

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?
    • Backport to release branch?

    How This Was Tested

    Cherry pick from existing change.

    Integration Instructions

    Add the new NULL version of the library to the platform DSC file

    MemoryBinOverrideLib|MdeModulePkg/Library/MemoryBinOverrideLibNull/MemoryBinOverrideLibNull.inf




Full Changelog: dev-v2024050000.2.0...v2024050001.0.0

dev-v2024050000.2.0

22 Nov 01:28
b5bc594
Compare
Choose a tag to compare

This is the first dev branch release notes.

What's Changed

These are reduced sets of notes since the v2024050000.1.4 release. Moving forward dev releases will only track changes on the dev branch.

  • BaseTools HostBasedUnittestRunner Modify CC_REORGANIZE to exclude Null implementations. by @apop5 in #1218
  • BaseTools\HostbasedUnittestRunner: Add support to exclude files from codecoverage. [RB & FF] by @apop5 in #1222
  • Update release drafter for dev branches by @makubacki in #1224

A release will be drafted for the dev branch and the release branch. The releases are differentiated by both their release title and tag.

  • Release Branch
    • Title: release-v<version>
    • Tag: v<version>
  • Dev Branch
    • Title: dev-v<version>
    • Tag: dev-v<version>

Note that the tag for the release branch follows the same convention as existing release tags, that is v<version>.

release-v2024050000.1.4

15 Nov 23:07
Compare
Choose a tag to compare

What's Changed

  • [Cherry-Pick] Declare mock SMM Access2 Protocol. (#1177) [RB \& FF] @apop5 (#1223)
    Change Details
      ## Description

    Declare mock SMM Access2 Protocol for google test.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    Run the google test.

    Integration Instructions

    N/A

      </blockquote>
      <hr>
    </details>
    
  • [Cherry-Pick] BaseTools\HostbasedUnittestRunner: Add support to exclude files from codecoverage. [RB & FF] (#1222)
    Change Details
      ## Description

    When Unit tests are run, the generated report includes null libraries in the calculation.
    Modifying the organize_coverage to exclude null libraries from the code coverage results.
    These changes only effect the case when CC_REORGANIZE is set to true in the project.

    add CC_EXCLUDE option, which defaults to exclude files/libraries with Null in their name. Can be over-ridden by adding CC_EXCLUDE to comandline.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?
    • Backport to release branch?

    How This Was Tested

    Ran on private repo which contained a lot of NULL libraries. Prior to change, Null libraries were included in the report, after the modification, they were not

    Tested modifying CC_EXCLUDE on command line to verify that specific libraries/folders can be targeted by exclude statement.

    Integration Instructions

    No changes required.
    coverage report will look different if CC_REORGANIZE is set to True as NULL libraries will be excluded.
    to restore to original functionality, specify CC_EXCLUDE= on the command line.

      </blockquote>
      <hr>
    </details>
    

Full Changelog: v2024050000.1.3...v2024050000.1.4

v2024050000.1.3

13 Nov 20:29
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • [TEMPORARY] Disable Stack Cookies for MSVC ARM/AARCH64 #1220
    Change Details
      ## Description

    edk2 commit tianocore/edk2@f53f029 added support for ARM/AARCH64 stack cookie checking. This was cherry-picked to mu_basecore. However, StackCheckLibNull does not contain the asm files for ARM/AARCH64 MSVC, so CI builds (and platform builds) fail.

    MSVC has a different requirements that are not documented for MSVC ARM/AARCH64 as compared to IA32/X64, so in order to spend more time investigating and testing this, stack cookies are disabled temporarily for ARM/AARCH64 MSVC in mu_basecore.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?
    • Backport to release branch?

    How This Was Tested

    Going back to previous state.

    Integration Instructions

    Fixes breakages seen when stack cookies were enabled.




Full Changelog: v2024050000.1.2...v2024050000.1.3

v2024050000.1.2

04 Nov 22:44
Compare
Choose a tag to compare

What's Changed

  • [CHERRY-PICK] Added all mock function in MockUefiLib under MdeModulePkg @v-sbolisetti (#1206)
    Change Details
      ## Description

    this is a cherry-pick of cd58170

    • Backport to release branch?
    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    Unit tests component can call these mock functions success

    Integration Instructions

    N/A




🐛 Bug Fixes

  • [Cherry-Pick] Fix naming convention in FirmwareVolume2 gmock @TsunFeng (#1207)
    Change Details
      ## Description

    Fix naming convention for FirmwareVolume2 gmock.

    • Rename FV_ReadFile -> FvReadFile
    • Rename FV_WriteFile -> FvWriteFile

    cherry-pick of


    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    Unit tests component can call these mock functions success

    Integration Instructions

    N/A




Full Changelog: v2024050000.1.1...v2024050000.1.2

v2023110013.0.1

04 Nov 22:43
Compare
Choose a tag to compare

What's Changed

  • [CHERRY-PICK] UnitTestFrameworkPkg: Use TianoCore mirror of subhook s… @makubacki (#1210)
    Change Details
      ## Description

    Change subhook url from https://github.com/Zeex/subhook to https://github.com/tianocore/edk2-subhook because old url is no longer available.

    Also align .gitmodules file to use consistent LF line endings.

    Signed-off-by: Michael D Kinney [email protected]
    (cherry picked from edk2 commit 95d8a1c)

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    • Build and CI

    Integration Instructions

    • Update all repos to use this new submodule URL for subhook
      since the original repo is no longer available.


Full Changelog: v2023110013.0.0...v2023110013.0.1

v2024050000.1.1

31 Oct 22:33
Compare
Choose a tag to compare

What's Changed

  • [Cherry-Pick] StandaloneMmPkg: Initialize 'WillReturn' variable @apop5 (#1200)
    Change Details
      ## Description

    The local variable 'WillReturn' was being used without prior initialization in some code paths.
    This patch ensures that 'WillReturn' is properly initialized to prevent undefined behavior.

    cherry-picked from edk2 tianocore/edk2@30b6d08

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    A platform using StandaloneMM failed to dispatch some handlers. It was tracked back to needing this edk2 cherry-pick is needed to handle the paths through the code.

    Integration Instructions

    N/A




  • [CHERRY-PICK] Bring in more mocks from release/202311 @VivianNK (#1197)
    Change Details
      ## Description

    Cherry-picked from dev/202405: #1182

    Add mock functions under MockUefiLib and Create Mock for CapsuleLib, PerformanceLib and GenericMemoryTestProtocol

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    Unit tests component can call these mock functions success

    Integration Instructions

    N/A

      </blockquote>
      <hr>
    </details>
    
  • [CHERRY-PICK] Added missing fix for ProductDataFormatter missed from 202311 (#1195) @kenlautner (#1196)
    Change Details
      ## Description

    A fix for the ProductDataFormatter script was missed during the transition from 202311 to 202405. This just adds it back.

    For details on how to complete these options and their meaning refer to CONTRIBUTING.md.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    Tested on physical hardware. Product Data is correctly being found.

    Integration Instructions

    N/A

      </blockquote>
      <hr>
    </details>
    

Full Changelog: v2024050000.1.0...v2024050000.1.1

v2024050000.1.0

22 Oct 19:04
Compare
Choose a tag to compare

What's Changed

  • [Cherry-Pick] MdePkg: Add Gmocks for libraries @VivianNK (#1189)
    Change Details
      ## Description

    Cherry-picked from dev (0ba6a3d)

    Mock Libraries:
    MdePkg\Test\Mock\Library\GoogleTest\MockCpuLib
    MdePkg\Test\Mock\Library\GoogleTest\MockPciSegmentLib
    MdePkg\Test\Mock\Library\GoogleTest\MockReportStatusCodeLib
    MdePkg\Test\Mock\Library\GoogleTest\MockSmmServicesTableLib

    Mock Protocol:
    MdePkg\Test\Mock\Include\GoogleTest\Protocol\MockMpService.h

    Signed-off-by: jack Hsieh [email protected]
    Cc: Maintainer Shruti Gupta [email protected]
    Cc: Reviewer Shruti Gupta [email protected]

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    Mocks used by unit tests

    Integration Instructions

    N/A




  • [Cherry-Pick] [RB\&FF] MdeModulePkg/HiiDatabaseDxe: Remove assert for VarStoreId = 0 @apop5 (#1186)
    Change Details
     

    Description

    It is legal for the VarStoreId of a question to
    be 0 per the UEFI spec:
    "Specifies the identifier of a previously
    declared variable store to use when storing the
    question’s value. A value of zero indicates
    no associated variable store."

    Instead of hitting an assert just skip this
    question as there is no value to return.

      </blockquote>
      <hr>
    </details>
    
  • [Rebase \& FF] MdePkg: Add gmock for PcdLib @VivianNK (#1179)
    Change Details
      ## Description

    Cherry-pick from dev/202405:
    a45519a

    For details on how to complete these options and their meaning refer to CONTRIBUTING.md.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    Consumed in a GoogleTest

    Integration Instructions

    N/A




  • [REBASE\&FF] Cherry-pick EDKII commits @Javagedes (#1172)
    Change Details
      ## Description Cherry-pick the following commits from EDKII / backport from dev/202405:
    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    N/A

    Integration Instructions

    N/A

      </blockquote>
      <hr>
    </details>
    
  • [CHERRY-PICK] MdePkg: Add mocks for AcpiTable and more @VivianNK (#1167)
    Change Details
      ## Description

    Create mock for AcpiTable, FirmwareVolume2 and
    AcpiSystemDescriptionTable protocols.

    Cherry-picked from dev/202405:
    fe6a1f9

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    Mock consumed in local unit test.

    Integration Instructions

    N/A




🚀 Features & ✨ Enhancements

  • [CHERRY-PICK] MdeModulePkg: Gcd: Only Update gMemoryMap Attributes if Correct GCD Type @os-d (#1175)
    Change Details
      ## Description

    Currently whenever gDS->SetMemorySpaceCapabilities() is called, it attempts to set the corresponding attributes in the gMemoryMap descriptor. However, gMemoryMap only contains entries from GCD types EfiGcdMemoryTypeSystemMemory and EfiGcdMemoryTypeMoreReliable, so for all other types a failure is reported in the code. This is a failure that is expected, so it does not provide value and can lead to real failures being ignored.

    This patch updates the gDS->SetMemorySpaceCapabilities() code to only call into updating gMemoryMap if the GCD type is SystemMemory or MoreReliable, to avoid spurious errors being reported. This also avoids the expensive operation of searching through gMemoryMap for entries we know we will fail to find.

    Cherry-picked from edk2 via dev/202405.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    N/A.

    Integration Instructions

    N/A.

      </blockquote>
      <hr>
    </details>
    
  • [REBASE\&FF] CryptoPkg: Require exact crypto version match @Javagedes (#1160)
    Change Details
      ## Description

    Crypto versioning is not currently backwards compatible. This change updates the check to require an exact match of the crypto version.

    Cherry-pick from dev/202405: 34455f5

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    N/A

    Integration Instructions

    N/A

      </blockquote>
      <hr>
    </details>
    

Full Changelog: v2024050000.0.2...v2024050000.1.0

v2023110013.0.0

17 Oct 23:52
Compare
Choose a tag to compare

What's Changed

⚠️ Breaking Changes

  • [Rebase \& FF] Fix PI status code @kuqin12 (#1187)
    Change Details
      ## Description

    We upstreamed the correct PI status code to PI spec and should get rid of MU_CHANGE to avoid conflict.

    For details on how to complete these options and their meaning refer to CONTRIBUTING.md.

    • Impacts functionality?
    • Impacts security?
    • Breaking change?
    • Includes tests?
    • Includes documentation?

    How This Was Tested

    This change only involves definition migration.

    Integration Instructions

    For applicable components, platform needs to update these definitions in their code.

    EFI_SW_EC_MEMORY_TYPE_INFORMATION_CHANGE -> EFI_SW_EC_ILLEGAL_SOFTWARE_STATE
    EFI_SW_EC_RELEASE_ASSERT -> EFI_SW_EC_ILLEGAL_SOFTWARE_STATE

      </blockquote>
      <hr>
    </details>
    

Full Changelog: v2023110012.1.0...v2023110013.0.0