AMD Geode LX crypto accelerator (glxsb)

Patrick Lamaizière patfbsd at davenulle.org
Sat Jun 14 17:03:55 UTC 2008


Le Fri, 6 Jun 2008 23:41:35 +0200,
Patrick Lamaizière <patfbsd at davenulle.org> a écrit :

Hello,

> I'm trying to port the glxsb driver from OpenBSD to FreeBSD 7-STABLE
> (via the NetBSD port).
> " The glxsb driver supports the security block of the Geode LX
> series processors.  The Geode LX is a member of the AMD Geode family
> of integrated x86 system chips.
>  
> Driven by periodic checks for available data from the generator,
> glxsb supplies entropy to the random(4) driver for common usage.
> 
> glxsb also supports acceleration of AES-128-CBC operations for
> crypto(4)."

I'm still working on it. I think it is ok now :

- The random number generator feeds random(4) with entropy via
random_harvest(9)

- I added hmac software encryptions to be able to use the driver with
ipsec(4). Most of the code is stolen from padlock(4), it is not easy to
use the same code as OpenBSD : they use some code from crytosoft but in
FreeBSD this code is private to the module. And the code of padlock is
more "human readable", I think. 

- I reworked the sessions to use a TAILQ like padlock.
- I added few sysctl for debugging purposes.

I tested with openssl, and ipsec with all hmac supported by the driver.
Seems good, but i'm not able to benchmark ipsec.

Sources (7-STABLE):
http://user.lamaiziere.net/patrick/glxsb-140608.tar.gz 

(Yes this is the good version!)

If you can test it and provide some review it would be nice.

Thanks, regards.


More information about the freebsd-hackers mailing list