From: Tom Lendacky <thomas.lendacky@amd.com>
To: Stephan Mueller <smueller@chronox.de>
Cc: <linux-crypto@vger.kernel.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
David Miller <davem@davemloft.net>
Subject: Re: AF_ALG interface not marking the end of the scatter-gather list
Date: Fri, 13 Feb 2015 09:02:00 -0600 [thread overview]
Message-ID: <54DE11E8.6030805@amd.com> (raw)
In-Reply-To: <1554206.3ZPmnjpxYl@tachyon.chronox.de>
On 02/13/2015 05:43 AM, Stephan Mueller wrote:
> Am Donnerstag, 12. Februar 2015, 17:41:59 schrieb Tom Lendacky:
>
> Hi Tom,
>
>> I was doing some testing of the CCP driver using the AF_ALG interface
>> and encountered a BUG_ON statement during scatter-gather DMA mapping.
>>
>> In algif_skcipher.c, before submitting a request to the the Crypto API
>> the input sg list is not updated to mark the last valid sg entry of the
>> input data. So even if there is only a single valid sg entry, sg_nents
>> returns 127 (the initial value used when creating the sg table).
>>
>> In the CCP driver, when making a call to dma_map_sg I supply the number
>> of entries as returned by sg_nents. During this call, the sg elements
>> that are not valid cause a BUG_ON statement to be hit.
>>
>> I've worked around the issue in skcipher_recvmsg by marking the last
>> valid sg entry (sg_mark_end(sgl->sg + sgl->cur - 1)) just before the
>> call to ablkcipher_request_set_crypt and then unmarking the entry after
>> the return from af_alg_wait_for_completion (using sg_unmark_end).
>>
>> Is this an appropriate/valid solution for this issue? If so, I can
>> submit a patch with the fix in algif_skcipher and algif_hash.
>
> There has been a patch around this issue -- see patch
> 0f477b655a524515ec9a263d70d51f460c05a161
Thanks for the pointer Stephan. I had been working with the main
kernel tree where this patch hasn't been merged yet.
Thanks,
Tom
>>
>> Thanks,
>> Tom
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
prev parent reply other threads:[~2015-02-13 15:16 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-12 23:41 AF_ALG interface not marking the end of the scatter-gather list Tom Lendacky
2015-02-13 11:43 ` Stephan Mueller
2015-02-13 15:02 ` Tom Lendacky [this message]
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=54DE11E8.6030805@amd.com \
--to=thomas.lendacky@amd.com \
--cc=davem@davemloft.net \
--cc=herbert@gondor.apana.org.au \
--cc=linux-crypto@vger.kernel.org \
--cc=smueller@chronox.de \
/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.