Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ArmPkg/SmbiosMiscDxe: Improve Smbios Type13 table population #8

Closed
wants to merge 8 commits into from

Conversation

thejaputta
Copy link
Contributor

Smbios Type13 currentLanguage string field is previously hardcoded
to English. This is now changed to a PCD which is initialized to
the same previosly hardcoded value. Now the platforms can set this
PCD based on the customized language setting.

TEST: Generated the build with this change and tested the smbiosview
output.

Signed-off-by: Thejaswani Putta tputta@tputta-vm-01.nvidia.com

jbrasen and others added 8 commits June 3, 2022 08:16
Increase TPL to TPL_NOTIFY to allow for use if caller is > TPL_CALLBACK.
This allows services like variable services that run at TPL_NOTIFY to
be hosted on ScsiDisks (i.e. UFS)

Change-Id: Iaba0a7ebe75fa8333b0166b21badd261bab40712
Reviewed-on: https://git-master.nvidia.com/r/c/3rdparty/edk2/+/2679653
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: svc-sw-mobile-l4t <svc-sw-mobile-l4t@nvidia.com>
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: Jake Garver <jake@nvidia.com>
Add support for partial free of non cached buffers.
If a request for less than the full size is requested new allocations
for the remaining head and tail of the buffer are added to the list.
Added verification that Buffer is EFI_PAGE_SIZE aligned.
The XHCI driver does this if the page size for the controller is >4KB.

Change-Id: Icaf54ce56878d550bbeda88b714bc15781422eac
Signed-off-by: Jeff Brasen <jbrasen@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/3rdparty/edk2/+/2684951
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: Ashish Singhal <ashishsingha@nvidia.com>
This change has been accepted upstream, but not yet merged into master.

The generated Makefile was missing a dependency.  This results in a
build-time race condition if the called make runs multiple jobs.

Bug 3526159

Change-Id: Ic5df115b1748f393cb495c3a97153e0dc94b3be7
The python BaseTools/Edk2ToolsBuild.py creates files in
BaseTools/BaseToolsBuild and should be ignored.

Bug 3663327

Change-Id: I9af2f9a798858087ef6b69d72d58433ee65ae6e3
Signed-off-by: Jeff Brasen <jbrasen@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/3rdparty/edk2/+/2738035
(cherry picked from commit 0dd5d43)
Reviewed-on: https://git-master.nvidia.com/r/c/3rdparty/edk2/+/2745216
Tested-by: Ashish Singhal <ashishsingha@nvidia.com>
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
Reviewed-by: svc-sw-mobile-l4t <svc-sw-mobile-l4t@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit
The translation value in ACPI should be the difference between the CPU and PCIe address.

Signed-off-by: Jeff Brasen <jbrasen@nvidia.com>
Reviewed-by: Pierre Gondois <pierre.gondois@arm.com>
Reviewed-by: Vidya Sagar <vidyas@nvidia.com>
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
Add support for PCIe devices with UID > 0xF.
This is done by using the next value in the name so
PCI5, PC26, etc

Signed-off-by: Jeff Brasen <jbrasen@nvidia.com>
Reviewed-by: Pierre Gondois <pierre.gondois@arm.com>
Reviewed-by: Vidya Sagar <vidyas@nvidia.com>
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
Add support library to allow for customization of _OSC and slot info.
The functions in the library are unchanged,
with the exception of adding PciInfo pointer to the APIs.

Signed-off-by: Jeff Brasen <jbrasen@nvidia.com>
Reviewed-by: Pierre Gondois <pierre.gondois@arm.com>
Reviewed-by: Vidya Sagar <vidyas@nvidia.com>
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
Smbios Type13 currentLanguage string field is previously hardcoded
to English. This is now changed to a PCD which is initialized to
the same previosly hardcoded value. Now the platforms can set this
PCD based on the customized language setting.

TEST: Generated the build with this change and tested the smbiosview
    output.

Signed-off-by: Thejaswani Putta <tputta@tputta-vm-01.nvidia.com>
@thejaputta thejaputta changed the base branch from main-edk2-stable202205 to master August 28, 2022 22:46
@jbrasen jbrasen added Pending EDK2 Review EDK2 maintainer review needed Pending EDK2 merge Change is not in tianocore/master Pending EDK2 stable release Change is not in most recent edk2-stable tag labels Sep 1, 2022
@thejaputta thejaputta closed this Oct 6, 2022
@thejaputta
Copy link
Contributor Author

SMBIOS Type 13 table generation will be implemented using DynamicTablesPkg soon. Hence this patch need not be merged.

jgarver pushed a commit that referenced this pull request May 25, 2024
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4541
REF: https://www.rfc-editor.org/rfc/rfc1948.txt
REF: https://www.rfc-editor.org/rfc/rfc6528.txt
REF: https://www.rfc-editor.org/rfc/rfc9293.txt

Bug Overview:
PixieFail Bug #8
CVE-2023-45236
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N
CWE-200 Exposure of Sensitive Information to an Unauthorized Actor

Updates TCP ISN generation to use a cryptographic hash of the
connection's identifying parameters and a secret key.
This prevents an attacker from guessing the ISN used for some other
connection.

This is follows the guidance in RFC 1948, RFC 6528, and RFC 9293.

RFC: 9293 Section 3.4.1.  Initial Sequence Number Selection

   A TCP implementation MUST use the above type of "clock" for clock-
   driven selection of initial sequence numbers (MUST-8), and SHOULD
   generate its initial sequence numbers with the expression:

   ISN = M + F(localip, localport, remoteip, remoteport, secretkey)

   where M is the 4 microsecond timer, and F() is a pseudorandom
   function (PRF) of the connection's identifying parameters ("localip,
   localport, remoteip, remoteport") and a secret key ("secretkey")
   (SHLD-1).  F() MUST NOT be computable from the outside (MUST-9), or
   an attacker could still guess at sequence numbers from the ISN used
   for some other connection.  The PRF could be implemented as a
   cryptographic hash of the concatenation of the TCP connection
   parameters and some secret data.  For discussion of the selection of
   a specific hash algorithm and management of the secret key data,
   please see Section 3 of [42].

   For each connection there is a send sequence number and a receive
   sequence number.  The initial send sequence number (ISS) is chosen by
   the data sending TCP peer, and the initial receive sequence number
   (IRS) is learned during the connection-establishing procedure.

   For a connection to be established or initialized, the two TCP peers
   must synchronize on each other's initial sequence numbers.  This is
   done in an exchange of connection-establishing segments carrying a
   control bit called "SYN" (for synchronize) and the initial sequence
   numbers.  As a shorthand, segments carrying the SYN bit are also
   called "SYNs".  Hence, the solution requires a suitable mechanism for
   picking an initial sequence number and a slightly involved handshake
   to exchange the ISNs.

Cc: Saloni Kasbekar <saloni.kasbekar@intel.com>
Cc: Zachary Clark-williams <zachary.clark-williams@intel.com>

Signed-off-by: Doug Flick [MSFT] <doug.edk2@gmail.com>
Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com>
jgarver pushed a commit that referenced this pull request Oct 12, 2024
This patch does not impact functionality. It aims to clarify the
synchronization flow between the BSP and APs to enhance code
readability and understanding:

Steps #6 and #11 are the basic synchronization requirements for all
cases.

Steps #1 is additional requirements if the MmCpuSyncModeTradition
mode is selected.

Steps #1, #2, #3, #4, #5, #7, #8, #9, and #10 are additional
requirements if the system needs to configure the MTRR.

Steps #9 and #10 are additional requirements if the system needs to
support the mSmmDebugAgentSupport.

Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Pending EDK2 merge Change is not in tianocore/master Pending EDK2 Review EDK2 maintainer review needed Pending EDK2 stable release Change is not in most recent edk2-stable tag
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants