Re: [PATCH 3/3] /dev/mem: Do not map unaccepted memory

From: David Hildenbrand
Date: Mon Sep 11 2023 - 04:11:01 EST


On 07.09.23 16:46, Dave Hansen wrote:
On 9/7/23 07:25, Kirill A. Shutemov wrote:
On Thu, Sep 07, 2023 at 07:15:21AM -0700, Dave Hansen wrote:
On 9/6/23 00:39, Adrian Hunter wrote:
Support for unaccepted memory was added recently, refer commit
dcdfdd40fa82 ("mm: Add support for unaccepted memory"), whereby
a virtual machine may need to accept memory before it can be used.

Do not map unaccepted memory because it can cause the guest to fail.
Doesn't /dev/mem already provide a billion ways for someone to shoot
themselves in the foot? TDX seems to have added the 1,000,000,001st.
Is this really worth patching?
Is it better to let TD die silently? I don't think so.

First, let's take a look at all of the distro kernels that folks will
run under TDX. Do they have STRICT_DEVMEM set?

For virtio-mem, we do

config VIRTIO_MEM
...
depends on EXCLUSIVE_SYSTEM_RAM

Which in turn:

config EXCLUSIVE_SYSTEM_RAM
...
depends on !DEVMEM || STRICT_DEVMEM


Not supported on all archs, but at least on RHEL9 on x86_64 and aarch64.

So, making unaccepted memory similarly depend on "!DEVMEM || STRICT_DEVMEM" does not sound too far off ...


--
Cheers,

David / dhildenb