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

Enhance td-shim/ResetVector to support test on non-TDX hardware platfroms #136

Open
jiangliu opened this issue Mar 8, 2022 · 4 comments

Comments

@jiangliu
Copy link
Member

jiangliu commented Mar 8, 2022

It help ease the development if we could test td-shim on non-TDX hardware platforms. Of course, all TDX related functionality will be disabled on non-TDX hardware platform.
Basically we need to enhance ResetVector to support boot from real mode and then switch protected as what expected by TDX.

@jyao1
Copy link
Member

jyao1 commented Mar 8, 2022

Agree from high level.

Question: What do you think the interface between hypervisor in non-tdx shim ?
Option 1: We reuse the normal non-tdx interface. E.g. Shim code runs from real mode. Shim gets memory info from CMOS.
Option 2: We reuse the td-shim interface. E.g. Shim code runs from protected mode. Shim gets the memory info via hob in RCX.

@jiangliu
Copy link
Member Author

I like option2, we should share as much code as possible with tdx.
Actually we need a shim for td-shim to setup the environment defined/expected by tdx

@ariel-adam
Copy link
Member

@jiangliu is this issue still relevant or can be closed?
If it's still relevant to what release do you think we should map it to (mid-November, end-December, mid-February etc...)?

@jinankjain
Copy link
Contributor

I am looking to familiarize myself with td-shim. This sounds like a good introductory task. So I have a few question here if someone can help me answer that would be great. What about the special registers provided TDX environment. For example: I think there is a register to obtain the VP count. How would that be emulated in the non-TDX hardware?

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

No branches or pull requests

4 participants