Re: [RFC PATCH 1/4] dma: Add DMA allocation preservation KHO ABI

Samiullah Khawaja <[email protected]>
Newsgroups org.infradead.lists.kexec,dev.linux.lists.iommu,org.kernel.vger.linux-kernel,org.kvack.linux-mm
Message-ID <[email protected]>
On Mon, Jun 08, 2026 at 05:53:43PM +0000, Pranjal Shrivastava wrote:
>On Tue, May 05, 2026 at 12:27:34AM +0000, Samiullah Khawaja wrote:
>> The DMA allocations can be backed by a variety of allocators. Add KHO
>> ABI for the preservation of contiguous allocations that are done through
>> dma-direct.
>>
>> Signed-off-by: Samiullah Khawaja <[email protected]>
>> ---
>>  include/linux/kho/abi/dma_alloc.h | 30 ++++++++++++++++++++++++++++++
>>  1 file changed, 30 insertions(+)
>>  create mode 100644 include/linux/kho/abi/dma_alloc.h
>>
>> diff --git a/include/linux/kho/abi/dma_alloc.h b/include/linux/kho/abi/dma_alloc.h
>> new file mode 100644
>> index 000000000000..46e61db81abe
>> --- /dev/null
>> +++ b/include/linux/kho/abi/dma_alloc.h
>> @@ -0,0 +1,30 @@
>> +/* SPDX-License-Identifier: GPL-2.0 */
>> +#ifndef _LINUX_KHO_ABI_DMA_ALLOC_H
>> +#define _LINUX_KHO_ABI_DMA_ALLOC_H
>> +
>> +#include <linux/types.h>
>> +
>> +/**
>> + * DOC: DMA Alloc ABI
>> + *
>> + * This header defines the structures used to serialize the state of DMA
>> + * allocations, done by device driver, across a Live Update.
>> + *
>> + * Only DMA allocations done through dma-direct that are contiguous and
>> + * allocated using alloc_page are supported.
>> + */
>> +
>> +/**
>> + * struct dma_alloc_ser - Serialized state of a single DMA allocation
>> + * @page_phys: Physical address of the preserved pages
>> + * @size: Size of the DMA allocation
>> + * @force_decrypted: Whether the memory is force decrypted in previous kernel
>> + */
>> +struct dma_alloc_ser {
>> +	u64 page_phys;
>> +	u64 size;
>> +	u8 force_decrypted;
>
>Should we also stope attrs in this ser state here? There might be flags
>like DMA_ATTR_NO_KERNEL_MAPPING which would need to be preserved across
>a kexec?
>

Agree, as replied on the other patch.
>> +	u8 padding[7];
>> +} __packed;
>> +
>> +#endif /* _LINUX_KHO_ABI_DMA_ALLOC_H */
>> --
>> 2.54.0.545.g6539524ca2-goog
>>
>
>Thanks,
>Praan

Thanks,
Sami
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.