Skip to content

Comments

Split Stage0 into library and binary crates#3992

Merged
conradgrobler merged 5 commits intoproject-oak:mainfrom
conradgrobler:stage0-refactor
May 18, 2023
Merged

Split Stage0 into library and binary crates#3992
conradgrobler merged 5 commits intoproject-oak:mainfrom
conradgrobler:stage0-refactor

Conversation

@conradgrobler
Copy link
Collaborator

This is the first step towards refactoring Stage0 so that we can build separate Stage0 binaries for AMD SEV-SNP and Intel TDX, since the linker scripts and assembly code will have to be different.

This follows the same pattern as the restricted kernel, where the main logic is in a library crate with a separate binary crate that contains only what is needed to build the binary.

@conradgrobler conradgrobler marked this pull request as ready for review May 18, 2023 11:22
"oak_functions_app",
"oak_tensorflow_app",
"stage0",
"stage0_bin",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be called stage0_amd?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought about that as well. The TDX-specific one will only work on TDX with memory encryption. This version will work on AMD CPUs with or without memory encryption and Intel CPUs without memory encryption, so I went for more generic naming.

In future we might want to simplify the per-instance logic by a split between no-encryption and SEV, in which case we can use this for the no-encryption version and create a new SEV (+ ES + SNP) version.

@conradgrobler conradgrobler merged commit 465e143 into project-oak:main May 18, 2023
@conradgrobler conradgrobler deleted the stage0-refactor branch May 18, 2023 14:35
@github-actions
Copy link

artifact_name = "quirk_echo_enclave_app"
artifact_digest = "sha256:62422d8bf5342a6ef4e8fd8e8b4bdea0bcfacd2ddd212f50e5ba7cc142677635"
provenance_digest = "sha256:5ad1180d4636f165f86ed846ea9d183f266db93d9beadf45c662f4273e202e5f"

@github-actions
Copy link

artifact_name = "stage0_bin"
artifact_digest = "sha256:82aac1adbfe3ada1244c1f54b7c949519e1f048067d0c3b236b7ae048fc7e227"
provenance_digest = "sha256:89ac7f3ddadc35d22b7afaee0241480ee6f71449ffc35591ebe029b8bd97ac74"

@github-actions
Copy link

artifact_name = "oak_restricted_kernel_bin"
artifact_digest = "sha256:4fa82e05fedb3d2ea67eec83112eed23d430f9951da9af331368e623fa884672"
provenance_digest = "sha256:f3d8fc7c43a71239225ecc07904b20d4fb4a5f055113400f442a0e82ecd3bdc8"

@github-actions
Copy link

artifact_name = "oak_echo_enclave_app"
artifact_digest = "sha256:9bf80965a5e2b3d78b7d630f6b96dc88c7f7b2b2572f9415eabac1092b60a1f5"
provenance_digest = "sha256:bcb0cc6c0fcff63c2d1713680b96d4ae5b61f7e79d1395960e748cdb08aebf6e"

@github-actions
Copy link

artifact_name = "oak_echo_raw_enclave_app"
artifact_digest = "sha256:375d13e351570c43c598ca80d1d1f514507f94d125bdc2bf8299b6825ad3c917"
provenance_digest = "sha256:d1d2ede870b3c4da591cb7447cb0f5b56f23ea0f1f9ba12b6bb89187bc462913"

@github-actions
Copy link

artifact_name = "oak_restricted_kernel_simple_io_bin"
artifact_digest = "sha256:13a06d17158683fee96e84e717e6f0e06926ceb3a7ee768de04842039430f213"
provenance_digest = "sha256:2618ae3d61b1f1254c0472eb6bf06327df129a31eed46be1a390f79ea1a38a54"

@github-actions
Copy link

artifact_name = "oak_functions_enclave_app"
artifact_digest = "sha256:e98a8f7d0bc22acf36ad8bdfda5096097cff92adc475369c46da264c117744c8"
provenance_digest = "sha256:99b4bcbacc0b7b608e7b712b0a7b686817f3780fb0f18d8ce49c6652d7473086"

@github-actions
Copy link

artifact_name = "oak_tensorflow_enclave_app"
artifact_digest = "sha256:7a3159d21f4ff227a89660f454134b712ed1760b07a9cba376e599642ffc3365"
provenance_digest = "sha256:44a31a8d160d291bc8582eb8266ac26d86893c9c1d2989bc2cf6fbc39d85d2f1"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants