Page MenuHomeFreeBSD

vmm: emulate INVD by ignoring it
ClosedPublic

Authored by corvink on Jun 28 2022, 8:43 AM.
Tags
Referenced Files
Unknown Object (File)
Dec 20 2023, 7:51 AM
Unknown Object (File)
Mar 16 2023, 8:04 AM
Unknown Object (File)
Mar 16 2023, 8:03 AM
Unknown Object (File)
Mar 16 2023, 7:59 AM
Unknown Object (File)
Mar 9 2023, 2:06 AM
Unknown Object (File)
Feb 17 2023, 3:07 AM
Unknown Object (File)
Feb 7 2023, 11:47 PM
Unknown Object (File)
Dec 25 2022, 10:11 PM
Subscribers

Details

Summary

On physical systems the ram isn't initialized on boot. So, coreboot uses
the cache as ram in this boot phase. When exiting cache as ram, coreboot
calls INVD for making the cache consistent.

In a virtual environment ram is always initialized and the cache is
always consistent. So, we can safely ignore this call.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision is now accepted and ready to land.Jun 28 2022, 4:50 PM

Presumably there aren't other uses of invd for which we would want some sort of behavior? But I suspect the reasons for ignoring wbinvd are similar.

If I don't miss something, INVD is always senseless in a virtual environment. So, I'm not planning to implement some kind of emulation.

This revision was automatically updated to reflect the committed changes.