1 |
commit: a7f93abca481c4afc0d6e0c515d41f2c4aef9e41 |
2 |
Author: Mike Pagano <mpagano <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun May 3 19:54:53 2015 +0000 |
4 |
Commit: Mike Pagano <mpagano <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun May 3 19:54:53 2015 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=a7f93abc |
7 |
|
8 |
Fix for lz4 compression. Thanks to Christian Xia. See bug #546422. |
9 |
|
10 |
0000_README | 4 ++++ |
11 |
2910_lz4-compression-fix.patch | 30 ++++++++++++++++++++++++++++++ |
12 |
2 files changed, 34 insertions(+) |
13 |
|
14 |
diff --git a/0000_README b/0000_README |
15 |
index bcce967..f51d299 100644 |
16 |
--- a/0000_README |
17 |
+++ b/0000_README |
18 |
@@ -71,6 +71,10 @@ Patch: 2905_s2disk-resume-image-fix.patch |
19 |
From: Al Viro <viro <at> ZenIV.linux.org.uk> |
20 |
Desc: Do not lock when UMH is waiting on current thread spawned by linuxrc. (bug #481344) |
21 |
|
22 |
+Patch: 2910_lz4-compression-fix.patch |
23 |
+From: https://bugs.gentoo.org/show_bug.cgi?id=546422 |
24 |
+Desc: Fix for lz4 compression regression. Thanks to Christian Xia. See bug #546422. |
25 |
+ |
26 |
Patch: 4200_fbcondecor-3.19.patch |
27 |
From: http://www.mepiscommunity.org/fbcondecor |
28 |
Desc: Bootsplash ported by Marco. (Bug #539616) |
29 |
|
30 |
diff --git a/2910_lz4-compression-fix.patch b/2910_lz4-compression-fix.patch |
31 |
new file mode 100644 |
32 |
index 0000000..1c55f32 |
33 |
--- /dev/null |
34 |
+++ b/2910_lz4-compression-fix.patch |
35 |
@@ -0,0 +1,30 @@ |
36 |
+--- a/lib/lz4/lz4_decompress.c 2015-04-13 16:20:04.896315560 +0800 |
37 |
++++ b/lib/lz4/lz4_decompress.c 2015-04-13 16:27:08.929317053 +0800 |
38 |
+@@ -139,8 +139,12 @@ |
39 |
+ /* Error: request to write beyond destination buffer */ |
40 |
+ if (cpy > oend) |
41 |
+ goto _output_error; |
42 |
++#if LZ4_ARCH64 |
43 |
++ if ((ref + COPYLENGTH) > oend) |
44 |
++#else |
45 |
+ if ((ref + COPYLENGTH) > oend || |
46 |
+ (op + COPYLENGTH) > oend) |
47 |
++#endif |
48 |
+ goto _output_error; |
49 |
+ LZ4_SECURECOPY(ref, op, (oend - COPYLENGTH)); |
50 |
+ while (op < cpy) |
51 |
+@@ -270,7 +274,13 @@ |
52 |
+ if (cpy > oend - COPYLENGTH) { |
53 |
+ if (cpy > oend) |
54 |
+ goto _output_error; /* write outside of buf */ |
55 |
+- |
56 |
++#if LZ4_ARCH64 |
57 |
++ if ((ref + COPYLENGTH) > oend) |
58 |
++#else |
59 |
++ if ((ref + COPYLENGTH) > oend || |
60 |
++ (op + COPYLENGTH) > oend) |
61 |
++#endif |
62 |
++ goto _output_error; |
63 |
+ LZ4_SECURECOPY(ref, op, (oend - COPYLENGTH)); |
64 |
+ while (op < cpy) |
65 |
+ *op++ = *ref++; |