From cf9d69e5917de9c684a92ac397f7ca2a9894f59c Mon Sep 17 00:00:00 2001 From: JSZLaoSai <76214570+JSZLaoSai@users.noreply.github.com> Date: Wed, 3 Sep 2025 20:29:07 +0800 Subject: [PATCH] Fix the wrong GDT CS entry value --- .../api/hypervisor-platform/samples/WinHvSampleAmd64.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/virtualization/api/hypervisor-platform/samples/WinHvSampleAmd64.cpp b/virtualization/api/hypervisor-platform/samples/WinHvSampleAmd64.cpp index 13a181ca7..a7d070a3d 100644 --- a/virtualization/api/hypervisor-platform/samples/WinHvSampleAmd64.cpp +++ b/virtualization/api/hypervisor-platform/samples/WinHvSampleAmd64.cpp @@ -204,7 +204,7 @@ void LongMode(void) const UINT64 gdtNullEntryIndex = 0; // GDT CS entry - page granularity, long, present, type code, execute\read\accessed const UINT16 csAttributes = 0xa09b; - const UINT64 gdtCsEntryValue = ((UINT64)csAttributes << 20); + const UINT64 gdtCsEntryValue = ((UINT64)csAttributes << 40); const UINT64 gdtCsEntryIndex = 1; uint64_t *gdtPage = static_cast(addressSpace.CommitRange(gdtSize, PAGE_READWRITE));