Skip to content

patina-v8.3.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 23:20
· 734 commits to refs/heads/main since this release

What's Changed

  • RFC: Remove `FunctionComponent` Component implementation @Javagedes (#741)
    Change Details
      ## Description

    RFC to remove the FunctionComponent implementation so that only structures (with or without internal state) can be used as a component

    Current RFC State: FCP

      </blockquote>
      <hr>
    </details>
    
  • chore: Release @joschock (#771)
    Change Details
      ## Description

    Release chore for 8.2.0

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

    How This Was Tested

    N/A - version bumps only.

    Integration Instructions

    N/A

      </blockquote>
      <hr>
    </details>
    

🚀 Features & ✨ Enhancements

  • GCD: Follow edk2 Attribute Behavior for Compat @os-d (#775)
    Change Details
      ## Description

    edk2 has a behavior where if SetMemorySpaceAttributes() is called with only virtual attributes set, then the page table is not updated (as 0 is a valid value in the page table attrs: RWX).

    Patina needs to follow this behavior to support existing drivers that expect to be able to set a virtual attribute without applying RWX to the range. The intermediate layer between the GCD and the paging crate (which forwards cache attrs to mtrr on x64) filters the virtual attributes out.

    Note: This actually led to an edk2 PR as well, due to a bug in edk2's implementation of this behavior: tianocore/edk2#11557.

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

    How This Was Tested

    Tested on a physical Intel platform.

    Integration Instructions

    N/A.

      </blockquote>
      <hr>
    </details>
    

🔐 Security Impacting

  • GCD: Follow edk2 Attribute Behavior for Compat @os-d (#775)
    Change Details
      ## Description

    edk2 has a behavior where if SetMemorySpaceAttributes() is called with only virtual attributes set, then the page table is not updated (as 0 is a valid value in the page table attrs: RWX).

    Patina needs to follow this behavior to support existing drivers that expect to be able to set a virtual attribute without applying RWX to the range. The intermediate layer between the GCD and the paging crate (which forwards cache attrs to mtrr on x64) filters the virtual attributes out.

    Note: This actually led to an edk2 PR as well, due to a bug in edk2's implementation of this behavior: tianocore/edk2#11557.

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

    How This Was Tested

    Tested on a physical Intel platform.

    Integration Instructions

    N/A.

      </blockquote>
      <hr>
    </details>
    

Full Changelog: patina-v8.2.0...v8.3.0