[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <b27eab62-cfe0-4dfc-8429-ea464eef9e6f@ti.com>
Date: Thu, 12 Jun 2025 15:45:54 +0530
From: T Pratham <t-pratham@...com>
To: Herbert Xu <herbert@...dor.apana.org.au>
CC: "David S. Miller" <davem@...emloft.net>,
Kamlesh Gurudasani
<kamlesh@...com>,
Vignesh Raghavendra <vigneshr@...com>,
Praneeth Bajjuri
<praneeth@...com>,
Manorit Chawdhry <m-chawdhry@...com>, <linux-kernel@...r.kernel.org>,
<linux-crypto@...r.kernel.org>, Vinod Koul
<vkoul@...nel.org>,
<dmaengine@...r.kernel.org>
Subject: Re: [PATCH v5 2/2] crypto: ti: Add driver for DTHE V2 AES Engine
(ECB, CBC)
On 11/06/25 15:23, Herbert Xu wrote:
> On Tue, Jun 03, 2025 at 06:07:29PM +0530, T Pratham wrote:
>>
>> + // Need to do a timeout to ensure finalise gets called if DMA callback fails for any reason
>> + ret = wait_for_completion_timeout(&rctx->aes_compl, msecs_to_jiffies(DTHE_DMA_TIMEOUT_MS));
>
> This doesn't look safe. What if the callback is invoked after a
> timeout? That would be a UAF.
>
> Does the DMA engine provide any timeout mechanism? If not, then
> you could do it with a delayed work struct. Just make sure that
> you cancel the work struct in the normal path callback. Vice versa
> you need to terminate the DMA job in the timeout work struct.
>
> Cheers,
Calling dma_terminate_sync() here should suffice I presume? I'll update the code accordingly.
Regards
T Pratham <t-pratham@...com>
Powered by blists - more mailing lists