created | 2024-09-08T05:34:21Z |
---|---|
begin | 2024-09-03T00:00:00Z |
end | 2024-09-04T00:00:00Z |
path | src/sys |
commits | 3 |
date | 2024-09-03T00:23:05Z | |||
---|---|---|---|---|
author | jsg | |||
files | src/sys/arch/amd64/conf/files.amd64 | log | diff | annotate |
src/sys/dev/ic/ccp.c | log | diff | annotate | |
src/sys/dev/ic/ccpvar.h | log | diff | annotate | |
src/sys/dev/ic/psp.c | log | diff | annotate | |
src/sys/dev/ic/pspvar.h | log | diff | annotate | |
src/sys/dev/pci/ccp_pci.c | log | diff | annotate | |
message |
move psp functions to psp.c and remove the ifdefs ok bluhm@ hshoexer@ |
date | 2024-09-03T13:36:19Z | |||
---|---|---|---|---|
author | dv | |||
files | src/sys/arch/amd64/amd64/vmm_machdep.c | log | diff | annotate |
message |
vmm(4)/vmx: avoid VPID leakage by allocating at vcpu init. VPID allocation being dependent on the host and guest config (consequently pushing it into the reset register handler) creates a leak where previous VPIDs are not freed if the hypervisor program resets a vcpu's registers. Recent SVM related changes pulled the VPID (ASID in AMD world) allocation up into vcpu initialization. This change does the same for VMX and cleans up appropriate logic. Minor changes to keep SVM and VMX styles in line with each other. ok bluhm@ |
date | 2024-09-03T17:19:53Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/arch/amd64/amd64/pmap.c | log | diff | annotate |
message |
For virtual addresses use fixed page frame without AMD SEV reduction. When running as a SEV guest, page frame mask is calculated from the CPUID provided "physical address bit reduction". The amd64 pmap code uses the variable pg_frame instead of the defined PG_FRAME 0x000ffffffffff000. There was one instance in pmap code where pg_frame was applied to virtual address, not physical address. On some machines the address bit reduction is rather large with six bits. So the calculated pg_frame is 0x00003fffffe00000. However, on amd64 VM_MAX_ADDRESS is defined as 0x00007fbfdfeff000. Masking a such large address with pg_frame caused havoc. Therefore, when masking virtual addresses, still use PG_FRAME. from hshoexer@ |