Package: cryptsetup
Version: 2:1.0.5-2
Severity: wishlist

Hey there,

In ubuntu, we have patched cryptsetup so that it looks for
optimized ciphers kernel modules and loads them if
available. Please consider merging this patch to debian.

You can find the complete patch here:

http://patches.ubuntu.com/c/cryptsetup/cryptsetup_2:1.0.5-2ubuntu1.patch


Find the changes for this particular issue:

diff -pruN 2:1.0.5-2/debian/cryptdisks.functions 
2:1.0.5-2ubuntu1/debian/cryptdisks.functions
--- 2:1.0.5-2/debian/cryptdisks.functions       2007-10-03 00:08:07.000000000 
+0100
+++ 2:1.0.5-2ubuntu1/debian/cryptdisks.functions        2007-10-03 
00:07:57.000000000 +0100
@@ -1,3 +1,8 @@
+#
+# This file is for inclusion with
+#      . /lib/cryptsetup/cryptdisks.functions
+# and should not be executed directly.
+
 PATH="/sbin:/bin"
 TABFILE=/etc/crypttab
 CRYPTDISKS_ENABLE="Yes"
@@ -391,6 +412,18 @@ do_close () {
        return $?
 }
 
+load_optimized_aes_module () {
+        local asm_module modulesdir
+
+        # find directory with kernel modules
+        modulesdir="/lib/modules/`uname -r`"
+        # Add assembly optimized AES module if it exists
+        asm_module=`ls -1 "$modulesdir"/kernel/arch/*/*/aes*.ko`
+        if [ $asm_module ];then
+           insmod $asm_module 2>/dev/null || true
+        fi
+}
+
 # Sets up all entries in crypttab
 do_start () {
        local dst src key opts result
@@ -399,6 +432,7 @@ do_start () {
        modprobe -qb dm-crypt || true
        dmsetup mknodes > /dev/null 2>&1 || true
        log_action_begin_msg "Starting $INITSTATE crypto disks"
+       load_optimized_aes_module
        mount_fs
 
        egrep -v "^[[:space:]]*(#|$)" "$TABFILE" | while read dst src key opts; 
do

--- 2:1.0.5-2/debian/initramfs/cryptroot-hook   2007-10-03 00:08:07.000000000 
+0100
+++ 2:1.0.5-2ubuntu1/debian/initramfs/cryptroot-hook    2007-10-03 
00:07:57.000000000 +0100
@@ -357,9 +371,18 @@ add_device() {
 
 # Unless MODULES = "dep", we always add a basic subset of modules/tools
 if [ "$MODULES" != "dep" ]; then
-       for mod in dm_mod dm_crypt aes sha256 cbc; do
+       for mod in dm_mod dm_crypt sha256 cbc; do
                manual_add_modules $mod
        done
+
+       # Add assembly optimized AES module if it exists
+       asm_module=`find "$MODULESDIR"/kernel/arch/ -name aes\*`
+       if [ $asm_module ];then
+               manual_add_modules `basename "$asm_module"|sed s/.ko//`
+       else
+               manual_add_modules aes
+       fi
+
        copy_exec /sbin/cryptsetup /sbin
        copy_exec /sbin/dmsetup /sbin
 fi



-- 
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to