2012-06-05 20:59:38

by Ajay Matai

[permalink] [raw]
Subject: mv_cesa 1920 limit still happening

Hello,
I am running QNAP NAS device with Marvell SoC and having issues with both AES and SHA1 when accelerated through mv_cesa. Both the encryption and hash algorithms work fine for file sizes up to 1920 bytes, while anything greater than that gets broken (comparing AES with openssl and SHA1 output with sha1sum command).

This is what I have done:
Back ported the mv_cesa driver from linux-3.4.rc7 to linux-2.6.33.2
Built and insmoded the driver, which loads fine and the algorithms show up in /proc/crypto

The kernel/userspace interface is provided by crypto-linux-1.4

Unfortunately, I am unable to test mv_cesa with latest kernel as this device is running linux-2.6.33.2 and QNAP has not made linux-3.x based firmware available.

Here's the CPU info:
[/share/HDA_DATA/Public/linux-3.4-rc7/drivers/crypto] # cat /proc/cpuinfo
Processor : Feroceon 88F6281 rev 1 (v5l)
BogoMIPS : 799.53
Features : swp half thumb fastmult edsp
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant : 0x2
CPU part : 0x131
CPU revision : 1

Hardware : Feroceon-KW ARM
Revision : 0000
Serial : 0000000000000000

Do you think this is a genuine bug or an artifact of running mv_cesa under linux-2.6.33.2 ?
Thanks for any help/pointers or anything else I can try?

--ajay
Symform.com


2012-06-06 14:31:53

by Phil Sutter

[permalink] [raw]
Subject: Re: mv_cesa 1920 limit still happening

Hi,

On Tue, Jun 05, 2012 at 08:36:18PM +0000, Ajay Matai wrote:
> I am running QNAP NAS device with Marvell SoC and having issues with both AES and SHA1 when accelerated through mv_cesa. Both the encryption and hash algorithms work fine for file sizes up to 1920 bytes, while anything greater than that gets broken (comparing AES with openssl and SHA1 output with sha1sum command).
>
> This is what I have done:
> Back ported the mv_cesa driver from linux-3.4.rc7 to linux-2.6.33.2
> Built and insmoded the driver, which loads fine and the algorithms show up in /proc/crypto
>
> The kernel/userspace interface is provided by crypto-linux-1.4
~~~~~~~~~~~~
This should read "cryptodev-linux", I guess?

> Unfortunately, I am unable to test mv_cesa with latest kernel as this device is running linux-2.6.33.2 and QNAP has not made linux-3.x based firmware available.
>
> Here's the CPU info:
> [/share/HDA_DATA/Public/linux-3.4-rc7/drivers/crypto] # cat /proc/cpuinfo
> Processor : Feroceon 88F6281 rev 1 (v5l)
> BogoMIPS : 799.53
> Features : swp half thumb fastmult edsp
> CPU implementer : 0x56
> CPU architecture: 5TE
> CPU variant : 0x2
> CPU part : 0x131
> CPU revision : 1
>
> Hardware : Feroceon-KW ARM
> Revision : 0000
> Serial : 0000000000000000
>
> Do you think this is a genuine bug or an artifact of running mv_cesa under linux-2.6.33.2 ?
> Thanks for any help.

This should not happen unless there were some crucial changes to the
infrastructure in between 2.6.33.2 and 2.6.39.2 (which we're using
here).

You're using the hmac_comp tool, right? Did you hexdump and compare the
results already? Does encryption/hashing of blocks > 1920bytes fail
every time, also on first try (call 'hmac_comp 1920')?

Greetings, Phil


Phil Sutter
Software Engineer

--


Viprinet GmbH
Mainzer Str. 43
55411 Bingen am Rhein
Germany

Phone/Zentrale: +49-6721-49030-0
Direct line/Durchwahl: +49-6721-49030-134
Fax: +49-6721-49030-209

[email protected]
http://www.viprinet.com

Registered office/Sitz der Gesellschaft: Bingen am Rhein
Commercial register/Handelsregister: Amtsgericht Mainz HRB40380
CEO/Geschäftsführer: Simon Kissel