<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>140387</bug_id>
          
          <creation_ts>2006-07-14 10:14 0000</creation_ts>
          <short_desc>TrueCrypt does not work with 2.6.18-rc1, fix included</short_desc>
          <delta_ts>2006-07-15 00:19:31 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Ebuilds</component>
          <version>2006.0</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          <bug_file_loc>http://www.truecrypt.org</bug_file_loc>
          
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>jva-misc@cute.se</reporter>
          <assigned_to>crypto@gentoo.org</assigned_to>
          

      

      
          <long_desc isprivate="0">
            <who>jva-misc@cute.se</who>
            <bug_when>2006-07-14 10:14:12 0000</bug_when>
            <thetext>TrueCrypt 4.2a do not support the 2.6.18-rc1 and possible newer versions of the Linux kernel. The problem exists because the kernel developers has changed &quot;drivers/md/dm.h&quot; in the Linux source code.

They have changed DMERR. In older kernels DMERR looked like this:

#define DMERR(f, x...) printk(KERN_ERR DM_NAME &quot;: &quot; f &quot;\n&quot; , ## x)

but has now been changed to:

#define DMERR(f, arg...) printk(KERN_ERR DM_NAME &quot;: &quot; DM_MSG_PREFIX &quot;: &quot; f &quot;\n&quot;, ## arg)

What needs to be done in the TrueCrypt source to make it work with 2.6.18 is to simply add:

#if LINUX_VERSION_CODE &gt;= KERNEL_VERSION(2,6,18)
#define DM_MSG_PREFIX &quot;truecrypt&quot;
#endif

to the top of &quot;Linux/Kernel/Dm-target.c&quot; in the TrueCrypt source code.

DM_MSG_PREFIX is used to tell from where the DMERR occured. In this case: truecrypt

I&apos;ve made a patch for TrueCrypt 4.2a, it&apos;s available here:
http://jdz.cute.se/patches/truecrypt-4.2a_kernel-2.6.18-rc1_fix.patch</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>dragonheart@gentoo.org</who>
            <bug_when>2006-07-15 00:19:31 0000</bug_when>
            <thetext>added patch to TrueCrypt 4.2a thanks for the patch.</thetext>
          </long_desc>
      
    </bug>

</bugzilla>