lkml.org 
[lkml]   [2020]   [Dec]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 034/717] crypto: talitos - Endianess in current_desc_hdr()
    Date
    From: Christophe Leroy <christophe.leroy@csgroup.eu>

    [ Upstream commit 195404db27f9533c71fdcb78d32a77075c2cb4a2 ]

    current_desc_hdr() compares the value of the current descriptor
    with the next_desc member of the talitos_desc struct.

    While the current descriptor is obtained from in_be32() which
    return CPU ordered bytes, next_desc member is in big endian order.

    Convert the current descriptor into big endian before comparing it
    with next_desc.

    This fixes a sparse warning.

    Fixes: 37b5e8897eb5 ("crypto: talitos - chain in buffered data for ahash on SEC1")
    Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/crypto/talitos.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/drivers/crypto/talitos.c b/drivers/crypto/talitos.c
    index 66773892f665d..1de6b01381268 100644
    --- a/drivers/crypto/talitos.c
    +++ b/drivers/crypto/talitos.c
    @@ -478,7 +478,7 @@ static u32 current_desc_hdr(struct device *dev, int ch)

    iter = tail;
    while (priv->chan[ch].fifo[iter].dma_desc != cur_desc &&
    - priv->chan[ch].fifo[iter].desc->next_desc != cur_desc) {
    + priv->chan[ch].fifo[iter].desc->next_desc != cpu_to_be32(cur_desc)) {
    iter = (iter + 1) & (priv->fifo_len - 1);
    if (iter == tail) {
    dev_err(dev, "couldn't locate current descriptor\n");
    @@ -486,7 +486,7 @@ static u32 current_desc_hdr(struct device *dev, int ch)
    }
    }

    - if (priv->chan[ch].fifo[iter].desc->next_desc == cur_desc) {
    + if (priv->chan[ch].fifo[iter].desc->next_desc == cpu_to_be32(cur_desc)) {
    struct talitos_edesc *edesc;

    edesc = container_of(priv->chan[ch].fifo[iter].desc,
    --
    2.27.0


    \
     
     \ /
      Last update: 2020-12-28 15:05    [W:4.027 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site