diff options
author | Alon Bar-Lev <alonbl@gentoo.org> | 2007-12-25 21:01:32 +0000 |
---|---|---|
committer | Alon Bar-Lev <alonbl@gentoo.org> | 2007-12-25 21:01:32 +0000 |
commit | 586b10c9d6fc69ddc827cb197875d7e0af7ebd31 (patch) | |
tree | 47efc0ea6f1a96a3fc8b71b88fa2fa620ad88df7 /app-crypt/truecrypt/files | |
parent | Marked ~hppa for armin76. (diff) | |
download | historical-586b10c9d6fc69ddc827cb197875d7e0af7ebd31.tar.gz historical-586b10c9d6fc69ddc827cb197875d7e0af7ebd31.tar.bz2 historical-586b10c9d6fc69ddc827cb197875d7e0af7ebd31.zip |
Modify 2.6.24 fix, bug#198394, thanks to elschner.net
Package-Manager: portage-2.1.4_rc11
Diffstat (limited to 'app-crypt/truecrypt/files')
-rw-r--r-- | app-crypt/truecrypt/files/truecrypt-4.3a-2.6.24.patch | 46 |
1 files changed, 41 insertions, 5 deletions
diff --git a/app-crypt/truecrypt/files/truecrypt-4.3a-2.6.24.patch b/app-crypt/truecrypt/files/truecrypt-4.3a-2.6.24.patch index 55b0c5a1c477..eec4aa8bdb9a 100644 --- a/app-crypt/truecrypt/files/truecrypt-4.3a-2.6.24.patch +++ b/app-crypt/truecrypt/files/truecrypt-4.3a-2.6.24.patch @@ -1,15 +1,51 @@ ---- truecrypt-4.3a-source-code.org/Linux/Kernel/Dm-target.c 2007-04-24 18:32:06.000000000 +0200 -+++ truecrypt-4.3a-source-code/Linux/Kernel/Dm-target.c 2007-12-15 18:22:39.000000000 +0100 -@@ -375,7 +375,12 @@ static void dereference_bio_ctx (struct +diff -Nrup a/Linux/Kernel/Dm-target.c b/Linux/Kernel/Dm-target.c +--- a/Linux/Kernel/Dm-target.c 2007-04-24 18:32:06.000000000 +0200 ++++ b/Linux/Kernel/Dm-target.c 2007-12-22 15:07:56.000000000 +0100 +@@ -375,7 +375,11 @@ static void dereference_bio_ctx (struct if (!atomic_dec_and_test (&bc->ref_count)) return; +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) bio_endio (bc->orig_bio, bc->orig_bio->bi_size, bc->error); +#else -+ bio_endio (bc->orig_bio, bc->orig_bio->bi_size); ++ bio_endio (bc->orig_bio, bc->error); +#endif -+ mempool_free (bc, tc->bio_ctx_pool); } +@@ -417,24 +421,35 @@ static void work_process (void *qdata) + } + + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) + static int truecrypt_endio (struct bio *bio, unsigned int bytes_done, int error) ++#else ++static int truecrypt_endio (struct bio *bio, int error) ++#endif + { + struct bio_ctx *bc = (struct bio_ctx *) bio->bi_private; + struct target_ctx *tc = (struct target_ctx *) bc->target->private; + struct bio_vec *bv; + int seg_no; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) + trace (1, "end: sc=%llu fl=%ld rw=%ld sz=%d ix=%hd vc=%hd dn=%d er=%d\n", + (unsigned long long) bio->bi_sector, bio->bi_flags, bio->bi_rw, bio->bi_size, bio->bi_idx, bio->bi_vcnt, bytes_done, error); ++#else ++ trace (1, "end: sc=%llu fl=%ld sz=%ld rw=%ld ix=%hd vc=%hd er=%d\n", ++ (unsigned long long) bio->bi_sector, bio->bi_flags, bio->bi_size, bio->bi_rw, bio->bi_idx, bio->bi_vcnt, error); ++#endif + + if (error != 0) + bc->error = error; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) + if (bio->bi_size) + { + trace (2, "Outstanding IO: %d\n", bio->bi_size); + return 1; + } ++#endif + + if (bio_data_dir (bio) == READ) + { |