Hi,

Please check if following patch fixes the issue:

http://www.spinics.net/lists/linux-crypto/msg07948.html

IIUC, SG table is generated in Cryptodev-linux and user-space pages carrying 
SRC/DST data
are pinned by cryptodev to avoid copy buffers from user-to-kernel space. Now 
these pages being HIGHMEM_ZONE pages,
requires kmap before Kernel (in this case talitos driver) can read/write on 
them otherwise virtual address correspond to
these pages would be read as NULL in kernel context resulting in such crashes.

I have not tried the fix on Talitos but wherever an access to user-supplied 
pages via cryptodev is made in such drivers, it
should be preceded by kmap.

Regards
Yashpal

From: cryptodev-linux-devel-boun...@gna.org 
[mailto:cryptodev-linux-devel-boun...@gna.org] On Behalf Of Nikolaos Tsakalakis
Sent: Friday, November 30, 2012 9:49 PM
To: Nikos Mavrogiannopoulos
Cc: cryptodev-linux-devel@gna.org
Subject: [Cryptodev-linux-devel] Σχετ: cryptodev-talitos crash (using hash)

Hi Niko,

 - I use cryptodev 1.5.
 - You are right, I missed that point in the code, it comes from 
cryptodev_hash_final, so areq->src should be NULL. Now my questions come to why 
talitos chooses areq->src for psrc (depends on req_ctx->count). I will check it 
out and I will come back to you, if necessary, next week.

Thank you for your immediate reply.

Kind Regards/Με ευχές
Nikolaos Tsakalakis
________________________________
Απο: Nikos Mavrogiannopoulos <n...@gnutls.org<mailto:n...@gnutls.org>>
Προς: Nikolaos Tsakalakis 
<ntsakala...@yahoo.co.uk<mailto:ntsakala...@yahoo.co.uk>>
Κοιν.: "cryptodev-linux-devel@gna.org<mailto:cryptodev-linux-devel@gna.org>" 
<cryptodev-linux-devel@gna.org<mailto:cryptodev-linux-devel@gna.org>>
Στάλθηκε: 12:47 μ.μ. Παρασκευή, 30 Νοεμβρίου 2012
Θεμα: Re: [Cryptodev-linux-devel] cryptodev-talitos crash (using hash)

On 11/30/2012 11:33 AM, Nikolaos Tsakalakis wrote:

> Hello all,
>
> I have an issue concerning cryptodev and talitos use. I use kernel 2.6.32-13, 
> however I use the talitos version of 2.6.35 backported. I have several times 
> a crash like the one below.
[...]

>

> I attach the objdump. Having a close look I can see that the scatterlist 
> pointer is NULL (req_ctx->psrc = NULL => areq->src = NULL => data coming from 
> the user space application, patched openssl).

> Do you have any hint concerning that issue?

Unfortunately not. Is it the latest version of cryptodev-linux? I cannot
check it now, but is the NULL you see in the scaterlist because of
cryptodev_hash_final() using ahash_request_set_crypt or because of the
data in cryptodev_hash_update()?

Could you make this issue reproducible with some minimal code?

regards,
Nikos

_______________________________________________
Cryptodev-linux-devel mailing list
Cryptodev-linux-devel@gna.org
https://mail.gna.org/listinfo/cryptodev-linux-devel

Reply via email to