public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Matt Turner" <mattst88@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-arch/lbzip2/files/, app-arch/lbzip2/
Date: Wed,  7 Aug 2019 19:13:54 +0000 (UTC)	[thread overview]
Message-ID: <1565205222.cec154c3438eee983aa3eccbb2c9ebc072d781b0.mattst88@gentoo> (raw)

commit:     cec154c3438eee983aa3eccbb2c9ebc072d781b0
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Wed Aug  7 19:02:07 2019 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Wed Aug  7 19:13:42 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cec154c3

app-arch/lbzip2: Add patch to fix unaligned access

Also remove unnecessary eautoreconf since Whissi was nice enough to run
make dist when he made the snapshot tarball.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 .../files/lbzip2-2.5_p20181227-fix-unaligned.patch | 33 ++++++++++++++++++++++
 ...81227.ebuild => lbzip2-2.5_p20181227-r1.ebuild} |  9 +-----
 2 files changed, 34 insertions(+), 8 deletions(-)

diff --git a/app-arch/lbzip2/files/lbzip2-2.5_p20181227-fix-unaligned.patch b/app-arch/lbzip2/files/lbzip2-2.5_p20181227-fix-unaligned.patch
new file mode 100644
index 00000000000..c23d1afc4ca
--- /dev/null
+++ b/app-arch/lbzip2/files/lbzip2-2.5_p20181227-fix-unaligned.patch
@@ -0,0 +1,33 @@
+https://github.com/kjn/lbzip2/pull/25
+
+From d570020ade2add591b97e61927545a005a2d4a6f Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Wed, 7 Aug 2019 11:47:04 -0700
+Subject: [PATCH] Align zero-length array to avoid unaligned accesses
+
+When make_tree() creates the left-justified base table (uint64_t *B)
+it does so with 64-bit stores:
+
+    B[k] = sofar;
+
+But B points to memory in the zero-length array "uint32_t tt[0]" at the
+end of struct decoder_state. Since tt's type is uint32_t, it is only
+aligned to a four byte boundary, and so the 64-bit store in make_tree()
+causes an unaligned trap on strict platforms like sparc.
+---
+ src/decode.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/decode.h b/src/decode.h
+index c9a9086..7c0ca3f 100644
+--- a/src/decode.h
++++ b/src/decode.h
+@@ -62,7 +62,7 @@ struct decoder_state {
+   uint8_t rle_char;             /* current character */
+   uint8_t rle_prev;             /* prevoius character */
+ 
+-  uint32_t tt[0];
++  uint32_t tt[0] __attribute__((aligned (8)));
+ };
+ 
+ 

diff --git a/app-arch/lbzip2/lbzip2-2.5_p20181227.ebuild b/app-arch/lbzip2/lbzip2-2.5_p20181227-r1.ebuild
similarity index 92%
rename from app-arch/lbzip2/lbzip2-2.5_p20181227.ebuild
rename to app-arch/lbzip2/lbzip2-2.5_p20181227-r1.ebuild
index 04fa9267b15..7dc8fcd267f 100644
--- a/app-arch/lbzip2/lbzip2-2.5_p20181227.ebuild
+++ b/app-arch/lbzip2/lbzip2-2.5_p20181227-r1.ebuild
@@ -3,8 +3,6 @@
 
 EAPI="7"
 
-inherit autotools
-
 DESCRIPTION="Parallel bzip2 utility"
 HOMEPAGE="https://github.com/kjn/lbzip2/"
 SRC_URI="https://dev.gentoo.org/~whissi/dist/${PN}/${P}.tar.gz"
@@ -19,14 +17,9 @@ DEPEND=""
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-2.3-s_isreg.patch
+	"${FILESDIR}"/${P}-fix-unaligned.patch
 )
 
-src_prepare() {
-	default
-
-	eautoreconf
-}
-
 src_configure() {
 	local myeconfargs=(
 		--disable-silent-rules


             reply	other threads:[~2019-08-07 19:13 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-07 19:13 Matt Turner [this message]
  -- strict thread matches above, loose matches on Subject: below --
2023-07-06 15:00 [gentoo-commits] repo/gentoo:master commit in: app-arch/lbzip2/files/, app-arch/lbzip2/ Matt Turner
2019-07-29  1:51 Matt Turner
2018-12-15  7:08 Robin H. Johnson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1565205222.cec154c3438eee983aa3eccbb2c9ebc072d781b0.mattst88@gentoo \
    --to=mattst88@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox