summaryrefslogtreecommitdiff
path: root/sys-fs
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2014-03-10 19:34:36 +0000
committerSergei Trofimovich <slyfox@gentoo.org>2014-03-10 19:34:36 +0000
commit91724a727c3cb33cb3893970e28967823a502f1a (patch)
tree80a88aaa0372ab73602867d2390faf51245a822a /sys-fs
parentUpdate waf and wayland dependency in 9999, thanks to Nikoli. (diff)
downloadhistorical-91724a727c3cb33cb3893970e28967823a502f1a.tar.gz
historical-91724a727c3cb33cb3893970e28967823a502f1a.tar.bz2
historical-91724a727c3cb33cb3893970e28967823a502f1a.zip
Fix recursive defrag failures on non-files (bug #503514 by Antoine Lemoine).
Package-Manager: portage-2.2.8_p62/cvs/Linux x86_64 Manifest-Sign-Key: 0x611FF3AA
Diffstat (limited to 'sys-fs')
-rw-r--r--sys-fs/btrfs-progs/ChangeLog9
-rw-r--r--sys-fs/btrfs-progs/Manifest22
-rw-r--r--sys-fs/btrfs-progs/btrfs-progs-3.12-r2.ebuild59
-rw-r--r--sys-fs/btrfs-progs/btrfs-progs-9999.ebuild5
-rw-r--r--sys-fs/btrfs-progs/files/btrfs-progs-3.12-defrag-sockets.patch78
5 files changed, 155 insertions, 18 deletions
diff --git a/sys-fs/btrfs-progs/ChangeLog b/sys-fs/btrfs-progs/ChangeLog
index c28b4f76f0f4..f634e7409703 100644
--- a/sys-fs/btrfs-progs/ChangeLog
+++ b/sys-fs/btrfs-progs/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-fs/btrfs-progs
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/btrfs-progs/ChangeLog,v 1.74 2014/01/05 10:46:27 ago Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/btrfs-progs/ChangeLog,v 1.75 2014/03/10 19:34:28 slyfox Exp $
+
+*btrfs-progs-3.12-r2 (10 Mar 2014)
+
+ 10 Mar 2014; Sergei Trofimovich <slyfox@gentoo.org>
+ +btrfs-progs-3.12-r2.ebuild, +files/btrfs-progs-3.12-defrag-sockets.patch,
+ btrfs-progs-9999.ebuild:
+ Fix recursive defrag failures on non-files (bug #503514 by Antoine Lemoine).
05 Jan 2014; Agostino Sarubbo <ago@gentoo.org> btrfs-progs-3.12-r1.ebuild:
Stable for x86, wrt bug #494114
diff --git a/sys-fs/btrfs-progs/Manifest b/sys-fs/btrfs-progs/Manifest
index 69529caa898a..6d31db5f2e13 100644
--- a/sys-fs/btrfs-progs/Manifest
+++ b/sys-fs/btrfs-progs/Manifest
@@ -4,6 +4,7 @@ Hash: SHA256
AUX btrfs-progs-0.19-convert-remove-used-space-update.patch 1005 SHA256 75759924f7d766705c5ea97d4cc2d70962b4c49e7f274465c3c2e9021d481f38 SHA512 ff51a89dfed6149d6e5938a661cd4a4f344706480195b219672ec950a8a1aaad7cdf416163191cccf84944d5b06bfc98d7e784d2ad659daebd3fd4b387174856 WHIRLPOOL e5c683640f5e0ed950fc69b6e8693e93826f1f5e011402d39272ba835f084194f3e5d5abfee2d0ed4b1aee9ad3d927113b01c813363b673c5b22fc5108b8ed92
AUX btrfs-progs-0.19-fix-underlinking.patch 579 SHA256 d79d53eb798c7f504a895e7bf461f801c86937df11d824eefe1ff8721ad88bf4 SHA512 8d6604d195f4757171a4ce5cf017b893a92fff4b90553bf24765278ccefc50bcc1fe9de410562b4451cd4ed9359cb6427c4a80087db2ac37aa1d195371675db2 WHIRLPOOL be41966ed844c05109aeea1e44871191153593343b57408c930ca5ffee1636b41d79669e6901dccdce57653875db7438f8e72c92a6361a21d893403b480091cd
AUX btrfs-progs-0.19-glibc212.patch 535 SHA256 c9a1479df01ba8b74b97ecf723d7f2a5e7c347dc0c92ae6676b9d1dc311a6bd1 SHA512 16f2a7e6fd813f4163c954860e47394d8123dd603c379ea4e2efc0a2dea17be925cf8d95c87306bb96395d09572156520cb0ae5af1d465f63752b58f09bce6db WHIRLPOOL f379a59e5e89cbb9dbed090893da939e2a52d4ddc9a9c9df36dfa90e388aa64e19a99c40e6e155a1ec54da50cecfc5233feb3c8bd2effab6621f317751b80fc5
+AUX btrfs-progs-3.12-defrag-sockets.patch 2488 SHA256 78980701932c5d299852c374f8bfbda2360be40957fbc95860e76e174b7892b5 SHA512 713823535b9ebe8324fbd9603955cbe5fb0c93c60ad5123cca712cc90bee948819680790e14e27245dbbe18c05187c8a09bd69235334aca67a69913dd3992df4 WHIRLPOOL 1c0110b4c12630502f0db4bffe99de0a173b3abe1d3d80e0e8e31b909e327c2a9d50d8f8d6ea8ef6b6e68c625575d62a68ff881067fea55b91c00155bfa5d57b
AUX btrfs-progs-3.12-fix-send-subvol-492776.patch 3099 SHA256 7a149637da9a35c31089cc69e4ad5d3f4beae9fe8f8d44d7a55b75394a6ad27f SHA512 e5d32a084ef706911464cb49c35928ce4a9f3ebaa580502c73dcfb74fa2e0f022bcc05e3fb6e26aa953fff78d792594b044cff342a42fa56a774033e6d59d961 WHIRLPOOL 1026b33cc0f45ae4a8795a81bc54aad48b9550efbde01425d445ae9fbfbddbeff5449cb431581eb9235a0201534198591d244e96c807896adfae3fbfe1624814
DIST btrfs-progs-0.19-redhat.patch.bz2 21699 SHA256 36e581ce32aad7119195a0f5c47d3007d38b3520b92ba3c825baf22f35f17723 SHA512 a3a9809548b61fcd25336789952d83d53a9ad1d221447907b85acd43a68518e3a746de3469bb917f51a49024b99bec1b9e1a46014b460ed8000b3919e3d444a1 WHIRLPOOL 3c33b0a2283cf55d3399609ebeb407567cb3daa60fcf01476b5acd22dd9fb1af7fa228a66d9ef24086543c9383a107811846c741feff503169561de6ef2b06d2
DIST btrfs-progs-0.19.11.tar.bz2 171425 SHA256 b4b510c4106a5b6159f2e51ac685ca700d53693140137e45f67e3767db18b662 SHA512 3704f240f7128bff8c5fc1ce7fd44b4eb985c1cddd7139fa96da0536849bdbbe9b08bbd928c3a20e91c5a0ccd07f60020f6dacb91a6887c2fc73de668477fa99 WHIRLPOOL 7fa6e7fb5566a17bb147ec847f6c1a3a55814a5676b1bf413f9b310de503c5cfef62b3e4b86a4ce28f7ae905416fad44fa802fc75c6cecd51265a9f69cc6175a
@@ -18,24 +19,15 @@ EBUILD btrfs-progs-0.20_rc1.ebuild 1572 SHA256 72aac33b871a604d5f668d2fabcc4e546
EBUILD btrfs-progs-0.20_rc1_p358.ebuild 1079 SHA256 d81f3a95ee67b4466f8e5a342484862a0c22a1d5e99fa95a0577368b5fc79e60 SHA512 94e1171073faf3a041413a38696d1c21344a59e3af7d453d56a70a919f3bdc60a625fd5a78532121ad4a03efc0d6bd9f43df300c6dbc918660c72bda3ae26dde WHIRLPOOL 71a9f7500192b9640d5a58b6bda1c21a729a5c10b605c55c2f602845cd0e1a86fd3ba8cffc79f65ff29b2ea970f1cca8247455ede92ea9d654a71b52af80ef0d
EBUILD btrfs-progs-0.20_rc1_p56.ebuild 1039 SHA256 494a3ed6440764f689beceaf5dee28fb071aec2a5f00e104a766aef427a40d8c SHA512 b4f9cda9e4e5cbedfeec3001d95c6356b964de7c3c530ab860104aa855093a59a497a5c69d2056eeb4e75f66b97c02de3f2cadd43205d9b4040a388dfa908282 WHIRLPOOL 157d1b2be6d8b8840117a028570a2e58c66f0ebab56ba465c1edb3109cde4b48ab5a07b9ca4f739b9cf732e26ef76db088e989f62ebafaa54c8e0e5e7aa5e867
EBUILD btrfs-progs-3.12-r1.ebuild 1296 SHA256 84d42770173fa071eea3c274ee3805a478cc2a6bdfe00a43849158edcc393708 SHA512 46e3730a69b3d31eeada7312d09c31e631a30829c052d165d3cfb0907ce6ecc529727e369c93725b8f7b8b6eb2f2ffd7d63baed3c19f9bf9846415ad158240b0 WHIRLPOOL c1ae28044d953987c5af0d73caf98fe9d520962b6ef69e5f00f181ede182b777f383668af955e1b401210bcd4767f1217c82e3b37eaefd17cc823beb7e2ae3b5
+EBUILD btrfs-progs-3.12-r2.ebuild 1352 SHA256 aa54631b74410214e3e66c0f1e9bce461cbb4964e6bf8e71153fdd2eaed4f175 SHA512 bba56ff199039b7465efa6c9354aaebbb65d9a79f247e44ecc41aaa58e3da910f8d93a76a8767248a7aa073753a2c17273886fa1e1bb1feea39e8135691fb461 WHIRLPOOL 646a0c19c228ca95d8cdc5c0b91ef4d600575e1eed50238ea958e38b51321f089f9bfebb49f86d343ce78b9539082cb1a5c8eae079b854f312db5f1c78efb4e6
EBUILD btrfs-progs-3.12.ebuild 1245 SHA256 8f801a7d5de7b9fffc6f312618a5beeec25d4475d3671faf0a288f757bc22086 SHA512 44ea5d9cd347badfddcbc06298634338c0a492a15083e2b36320de905f38a1c912fd30c37878ff3e3b8753f822a15f2b61b008e5759ca4e5b97cc1935146e978 WHIRLPOOL 7a441dba6b985cd41202256f2fd07d16952244c451bc381fa69a0ab117f3c6587685af755d1ae4958f627715ce5075b736d391631e6b17fc5a055401ab0f7502
-EBUILD btrfs-progs-9999.ebuild 1308 SHA256 4f6240f3ed09140fd31ebb57bab8d237099cbc13733aafc25ebbcc9391298d47 SHA512 8da91e8cdf28d5316974cef872cdb538c44d3cafefd646cfdc09caf9a2467ff7570cc6aa02bfa0edf917703e8ec836d95a61264b3a43a3e2018a501a5cc258e3 WHIRLPOOL 58ae395728220c26d9c404717e8fbf5690407a7f5b5540227a22d289993511be89d2607b79256452765da47dc3f5126353f78d83b4d58ccc0cc656fbe95fc87b
-MISC ChangeLog 11220 SHA256 7817ce35f78f37f2ad6de8c2669119e80a780532132ae09a1e430bf5fbd38559 SHA512 31f489b534872a86ea851268032926ced50f509c8cea94a5b09a016df6dd5bf8d370dc85608c01bced6fba9430207b6cd361d374a6590ae8cae257349e9fd2d2 WHIRLPOOL 7a2f8738a376528baf632548c5bebd8af16f2dd69d0d18d37f0000301f071d2cc7b95947b854326eaa31e107852d397f7e91bb519ac5554ffa7cf8378243f9f6
+EBUILD btrfs-progs-9999.ebuild 1362 SHA256 34c278acaba965cae49015705ebb61d9571e163fdc45332bd1358c057a55ec18 SHA512 6e3f41396a19c7a536db208125a7130e1094ef85e4c7f7285465cee852cda28dd28cd4aa794fdcfbb05e67a27d517f7cb0d5351e19b1195bb7b713c01a2d616c WHIRLPOOL 41439b97f89d0897d63455374a5aa59ffa64efa00ccce81ae3d57f727094544788664f318754246b1a0e267cbec486dca4527cf2d7aeba45b13bfa57240db1b1
+MISC ChangeLog 11497 SHA256 dca77b95c7d12a6cbd4893adb78610e31c4925e601e4139453dd8f15ab52a440 SHA512 a68fbcb060a20f5268b143aedf9992f08a3e0f4c34df12253de2192ae9fe3e12d5f3dec1a0ad4071d4066e97e25c8f50979dca2aeca3b243c0d04f88b22773c9 WHIRLPOOL 32e193a69bbed29a525b6f54e785011efbc24a4d6998ddd9b691a00e8878d8fcc3be9000de8c0980d1e8c99872e639d249b2a6b4f286dc43057047b8397cd78d
MISC metadata.xml 432 SHA256 45049c27e84490ae5258d3beaa9c6defe80360aa7f03733da492fd38d026a5e0 SHA512 1dda7aa3a62062d6b42579efff9468c08fcca001b28e180c8257291332ac1874f749a19a4053daec072d7b878c13873557f05d82ad42428f105556c4cd304460 WHIRLPOOL 970b4a981f1afbe87ad4240fc2dd5ebfc4bb134a2e3c188519ecb6a87d230b196a902381de3e6346855e68c6e92f883c4d6b4aa01bcdb090e2de8f230e1cecff
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
-iQIcBAEBCAAGBQJSyTgEAAoJELp701BxlEWfwfwP/008XUA/5La3nNC7ZSJOaRbN
-ilQUtus1+t8hpFr7bpmYHGoL/5F0Jcv5GkZpOV5h5wR/2kKggDihmPzNoDlZp7Fr
-q3btocnp5OUGV49+ouCslRNGamvn0L/Y/RtwLIhJwlYey92+g2EnIYi8Gu3H6/S3
-y39o7Hgen+0ANuTuggSEuH6mEIFt/+6HVOOIdd/LeKcjY64jqJD/Vpsj2hNxSZeo
-7D/qrZMW4s5ESraUp8LCZkWDqkN74Dcy1hRQkBlqx+BlfWX0Tyicz5jLA8faj/ug
-D0hG3isXCwtL7axA5dtAQSgb1y0cbkxHYg49An+1QNxCFycq2+NEL36Uu017B0cb
-S5hDqLoBkjWCBDdaApiDOulojrepYw0+hqFDpT/s3vqoTpLSK9hrbK9pAnW/i6NA
-uDkPLqVeGJpRBnhHM7jpVivXhgiwWa+VDjW0NU/BGV22uW8gzNYjkEs5bcZxlyXQ
-lp8gYKgFggOBxjqIaHe4F+1WXQxEK6mgoCzEdheyZzwoGbqSa0OjXnSu7tmjDLm9
-xunM1MNG3EDfpzSXfnrM+3K+GdmREcTsTtI+BYttCmX/0WLV0nm9kU+4Mthskrkp
-1o4BdwyR3gOQOtbsa9o7H2GPT2vDJkyCgGn1O+L+ud6TChSdkifANrTKuEs3RT+/
-cUtgB+0aqMZ16LMLcX1t
-=nZCT
+iEYEAREIAAYFAlMeE6YACgkQcaHudmEf86qEcQCfau4uRTqno+bJ0I2H7UcZkIrM
+5boAn0J2P9xc5SZvwhnn1fOx4KYs0uuR
+=S9++
-----END PGP SIGNATURE-----
diff --git a/sys-fs/btrfs-progs/btrfs-progs-3.12-r2.ebuild b/sys-fs/btrfs-progs/btrfs-progs-3.12-r2.ebuild
new file mode 100644
index 000000000000..6788a719b449
--- /dev/null
+++ b/sys-fs/btrfs-progs/btrfs-progs-3.12-r2.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/btrfs-progs/btrfs-progs-3.12-r2.ebuild,v 1.1 2014/03/10 19:34:28 slyfox Exp $
+
+EAPI=5
+
+inherit eutils multilib toolchain-funcs
+
+libbtrfs_soname=0
+
+if [[ ${PV} != 9999 ]]; then
+ MY_PV=v${PV}
+ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+ SRC_URI="https://www.kernel.org/pub/linux/kernel/people/mason/${PN}/${PN}-${MY_PV}.tar.xz"
+ S="${WORKDIR}"/${PN}-${MY_PV}
+else
+ inherit git-2
+ EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git
+ https://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git"
+fi
+
+DESCRIPTION="Btrfs filesystem utilities"
+HOMEPAGE="https://btrfs.wiki.kernel.org"
+
+LICENSE="GPL-2"
+SLOT="0/${libbtrfs_soname}"
+IUSE=""
+
+DEPEND="
+ dev-libs/lzo
+ sys-libs/zlib
+ sys-apps/acl
+ sys-fs/e2fsprogs
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-fix-send-subvol-492776.patch
+ epatch "${FILESDIR}"/${P}-defrag-sockets.patch
+ epatch_user
+}
+
+src_compile() {
+ emake \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ BUILD_VERBOSE=1
+}
+
+src_install() {
+ emake install \
+ DESTDIR="${D}" \
+ prefix=/usr \
+ bindir=/sbin \
+ libdir=/usr/$(get_libdir) \
+ mandir=/usr/share/man
+}
diff --git a/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild b/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild
index 9b6c844193d9..30b95ace6983 100644
--- a/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild
+++ b/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild,v 1.31 2013/11/30 20:55:15 slyfox Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/btrfs-progs/btrfs-progs-9999.ebuild,v 1.32 2014/03/10 19:34:28 slyfox Exp $
EAPI=5
@@ -36,6 +36,7 @@ RDEPEND="${DEPEND}"
src_prepare() {
epatch "${FILESDIR}"/${PN}-3.12-fix-send-subvol-492776.patch
+ epatch "${FILESDIR}"/${PN}-3.12-defrag-sockets.patch
epatch_user
}
diff --git a/sys-fs/btrfs-progs/files/btrfs-progs-3.12-defrag-sockets.patch b/sys-fs/btrfs-progs/files/btrfs-progs-3.12-defrag-sockets.patch
new file mode 100644
index 000000000000..e2feb0bdbefa
--- /dev/null
+++ b/sys-fs/btrfs-progs/files/btrfs-progs-3.12-defrag-sockets.patch
@@ -0,0 +1,78 @@
+From: Pascal VITOUX <vitoux.pascal@gmail.com>
+To: linux-btrfs@vger.kernel.org
+Cc: Pascal VITOUX <vitoux.pascal@gmail.com>
+Subject: [PATCH] btrfs-progs: skip non-regular files while defragmenting
+Date: Thu, 9 Jan 2014 23:47:14 +0100
+Message-Id: <1389307634-8226-1-git-send-email-vitoux.pascal@gmail.com>
+X-Mailer: git-send-email 1.8.5.2
+Sender: linux-btrfs-owner@vger.kernel.org
+Precedence: bulk
+List-ID: <linux-btrfs.vger.kernel.org>
+X-Mailing-List: linux-btrfs@vger.kernel.org
+
+Skip non-regular files to avoid ioctl errors while defragmenting.
+
+They are silently ignored in recursive mode but reported as errors when
+used as command-line arguments.
+
+Signed-off-by: Pascal VITOUX <vitoux.pascal@gmail.com>
+Gentoo-bug: https://bugs.gentoo.org/503514
+Reported-by: Antoine Lemoine
+---
+ cmds-filesystem.c | 26 ++++++++++++++++----------
+ 1 file changed, 16 insertions(+), 10 deletions(-)
+
+diff --git a/cmds-filesystem.c b/cmds-filesystem.c
+index 1c1926b..54fba10 100644
+--- a/cmds-filesystem.c
++++ b/cmds-filesystem.c
+@@ -646,7 +646,7 @@ static int defrag_callback(const char *fpath, const struct stat *sb,
+ int e = 0;
+ int fd = 0;
+
+- if (typeflag == FTW_F) {
++ if ((typeflag == FTW_F) && S_ISREG(sb->st_mode)) {
+ if (defrag_global_verbose)
+ printf("%s\n", fpath);
+ fd = open(fpath, O_RDWR);
+@@ -748,6 +748,7 @@ static int cmd_defrag(int argc, char **argv)
+ defrag_global_range.flags |= BTRFS_DEFRAG_RANGE_START_IO;
+
+ for (i = optind; i < argc; i++) {
++ struct stat st;
+ dirstream = NULL;
+ fd = open_file_or_dir(argv[i], &dirstream);
+ if (fd < 0) {
+@@ -757,16 +758,21 @@ static int cmd_defrag(int argc, char **argv)
+ close_file_or_dir(fd, dirstream);
+ continue;
+ }
++ if (fstat(fd, &st)) {
++ fprintf(stderr, "ERROR: failed to stat %s - %s\n",
++ argv[i], strerror(errno));
++ defrag_global_errors++;
++ close_file_or_dir(fd, dirstream);
++ continue;
++ }
++ if (!(S_ISDIR(st.st_mode) || S_ISREG(st.st_mode))) {
++ fprintf(stderr, "ERROR: %s is not a directory or a regular "
++ "file.\n", argv[i]);
++ defrag_global_errors++;
++ close_file_or_dir(fd, dirstream);
++ continue;
++ }
+ if (recursive) {
+- struct stat st;
+-
+- if (fstat(fd, &st)) {
+- fprintf(stderr, "ERROR: failed to stat %s - %s\n",
+- argv[i], strerror(errno));
+- defrag_global_errors++;
+- close_file_or_dir(fd, dirstream);
+- continue;
+- }
+ if (S_ISDIR(st.st_mode)) {
+ ret = nftw(argv[i], defrag_callback, 10,
+ FTW_MOUNT | FTW_PHYS);
+--
+1.8.5.2