From: Aneesh Kumar K.V <aneesh.kumar@kernel.org>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: iommu@lists.linux.dev, linux-kernel@vger.kernel.org,
robin.murphy@arm.com, m.szyprowski@samsung.com, will@kernel.org,
maz@kernel.org, suzuki.poulose@arm.com, catalin.marinas@arm.com,
jiri@resnulli.us, Mostafa Saleh <smostafa@google.com>
Subject: Re: [RFC PATCH 2/7] dma-direct: use DMA_ATTR_CC_DECRYPTED in alloc/free paths
Date: Fri, 17 Apr 2026 21:04:56 +0530 [thread overview]
Message-ID: <yq5a340tiorj.fsf@kernel.org> (raw)
In-Reply-To: <20260417152828.GJ2577880@ziepe.ca>
Jason Gunthorpe <jgg@ziepe.ca> writes:
> On Fri, Apr 17, 2026 at 02:28:55PM +0530, Aneesh Kumar K.V (Arm) wrote:
>> Propagate force_dma_unencrypted() into DMA_ATTR_CC_DECRYPTED in the
>> dma-direct allocation path and use the attribute to drive the related
>> decisions.
>>
>> This updates dma_direct_alloc(), dma_direct_free(), and
>> dma_direct_alloc_pages() to fold the forced unencrypted case into attrs.
>>
>> Signed-off-by: Aneesh Kumar K.V (Arm) <aneesh.kumar@kernel.org>
>> ---
>> kernel/dma/direct.c | 34 ++++++++++++++++++++++++++--------
>> 1 file changed, 26 insertions(+), 8 deletions(-)
>>
>> diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
>> index c2a43e4ef902..3932033f4d8c 100644
>> --- a/kernel/dma/direct.c
>> +++ b/kernel/dma/direct.c
>> @@ -201,16 +201,21 @@ void *dma_direct_alloc(struct device *dev, size_t size,
>> dma_addr_t *dma_handle, gfp_t gfp, unsigned long attrs)
>> {
>> bool remap = false, set_uncached = false;
>> - bool mark_mem_decrypt = true;
>> + bool mark_mem_decrypt = !!(attrs & DMA_ATTR_CC_DECRYPTED);
>> struct page *page;
>
> This is changing the API, I think it should not be hidden in a patch
> like this, also not sure it even makes sense..
>
> DMA_ATTR_CC_DECRYPTED only says the address passed to mapping is
> decrypted. It is like DMA_ATTR_MMIO in this regard.
>
> Passing it to dma_alloc_attrs() is currently invalid, and I think it
> should remain invalid, or at least this new behavior introduced in its
> own patch deliberately.
>
That is probably confusion on my side. I thought all the DMA attr can be
used on the alloc side to specify the attribute for DMA allocation
buffer.
>
> Meaning, if you call dma_direct_alloc() force_dma_decrypted decides
> what setting DMA_ATTR_CC_DECRYPTED takes and it is EOPNOTSUPP if the
> user passes it in.
>
Sure, I can update the patchset to implement the above.
-aneesh
next prev parent reply other threads:[~2026-04-17 15:35 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-17 8:58 [RFC PATCH 0/7] dma-mapping: Use DMA_ATTR_CC_DECRYPTED through direct, pool and swiotlb paths Aneesh Kumar K.V (Arm)
2026-04-17 8:58 ` [RFC PATCH 1/7] dma-direct: swiotlb: handle swiotlb alloc/free outside __dma_direct_alloc_pages Aneesh Kumar K.V (Arm)
2026-04-17 8:58 ` [RFC PATCH 2/7] dma-direct: use DMA_ATTR_CC_DECRYPTED in alloc/free paths Aneesh Kumar K.V (Arm)
2026-04-17 15:28 ` Jason Gunthorpe
2026-04-17 15:34 ` Aneesh Kumar K.V [this message]
2026-04-18 6:27 ` Aneesh Kumar K.V
2026-04-18 16:06 ` Jason Gunthorpe
2026-04-20 12:13 ` Jiri Pirko
2026-04-17 8:58 ` [RFC PATCH 3/7] dma-pool: track decrypted atomic pools and select them via attrs Aneesh Kumar K.V (Arm)
2026-04-17 8:58 ` [RFC PATCH 4/7] dma: swiotlb: track pool encryption state and honor DMA_ATTR_CC_DECRYPTED Aneesh Kumar K.V (Arm)
2026-04-17 8:58 ` [RFC PATCH 5/7] dma-mapping: make dma_pgprot() " Aneesh Kumar K.V (Arm)
2026-04-17 8:58 ` [RFC PATCH 6/7] dma-direct: make dma_direct_map_phys() " Aneesh Kumar K.V (Arm)
2026-04-17 8:59 ` [RFC PATCH 7/7] dma-direct: set decrypted flag for remapped DMA allocations Aneesh Kumar K.V (Arm)
2026-04-17 9:56 ` [RFC PATCH] dma-direct: select DMA address encoding from DMA_ATTR_CC_DECRYPTED Aneesh Kumar K.V
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=yq5a340tiorj.fsf@kernel.org \
--to=aneesh.kumar@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=iommu@lists.linux.dev \
--cc=jgg@ziepe.ca \
--cc=jiri@resnulli.us \
--cc=linux-kernel@vger.kernel.org \
--cc=m.szyprowski@samsung.com \
--cc=maz@kernel.org \
--cc=robin.murphy@arm.com \
--cc=smostafa@google.com \
--cc=suzuki.poulose@arm.com \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.