• Rick Edgecombe's avatar
    dma-direct: Leak pages on dma_set_decrypted() failure · b9fa1694
    Rick Edgecombe authored
    On TDX it is possible for the untrusted host to cause
    set_memory_encrypted() or set_memory_decrypted() to fail such that an
    error is returned and the resulting memory is shared. Callers need to
    take care to handle these errors to avoid returning decrypted (shared)
    memory to the page allocator, which could lead to functional or security
    issues.
    
    DMA could free decrypted/shared pages if dma_set_decrypted() fails. This
    should be a rare case. Just leak the pages in this case instead of
    freeing them.
    Signed-off-by: default avatarRick Edgecombe <rick.p.edgecombe@intel.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    b9fa1694
direct.c 18.2 KB