diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-07-04 14:05:23 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-07-04 14:05:23 +0100 |
commit | 05b8b0e0af1d72e51a3ee61522941bf7605cd01c (patch) | |
tree | 43b0410e62aba677b4b256bc3ffe3fd333d28dbe /sys-cluster/glusterfs | |
parent | 90c88731bd036e5698b281fbc0a5f3aa4c9983ac (diff) |
gentoo resync : 04.07.2020
Diffstat (limited to 'sys-cluster/glusterfs')
-rw-r--r-- | sys-cluster/glusterfs/Manifest | 23 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/glusterfs-3.12.2-poisoned-sysmacros.patch | 11 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/glusterfs-4.1.0-silent_rules.patch | 15 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/glusterfs-6.7-fix-rebalance-crash.patch | 185 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-4.1.8.ebuild | 223 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-6.5.ebuild | 204 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-6.7-r1.ebuild | 211 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-6.8.ebuild | 2 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-6.9.ebuild (renamed from sys-cluster/glusterfs/glusterfs-7.3.ebuild) | 2 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-7.6.ebuild (renamed from sys-cluster/glusterfs/glusterfs-7.2-r1.ebuild) | 39 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-9999.ebuild | 64 | ||||
-rw-r--r-- | sys-cluster/glusterfs/metadata.xml | 11 |
12 files changed, 59 insertions, 931 deletions
diff --git a/sys-cluster/glusterfs/Manifest b/sys-cluster/glusterfs/Manifest index d4fba37caafe..c418652770d7 100644 --- a/sys-cluster/glusterfs/Manifest +++ b/sys-cluster/glusterfs/Manifest @@ -1,26 +1,17 @@ AUX 50glusterfs-mode-gentoo.el 169 BLAKE2B 461afb9f17ef9dee79348279e861039193400d61a926e9d8499351b7e42377cc1bffce6dc2c2d7f3b50b1de016a336bad69c7a79bb800b973288eef542baed85 SHA512 f90b3f49f53c08db5596a6795df64a834b390602a79fb79b56f6cfb6191c7ca8ce2bedd2885d049575e26cc3b321f80e2786e99055c02682f4fbf454d5ed5804 AUX glusterd-r3.initd 755 BLAKE2B 6b402725a6a53839ff718ae19f4917b61330f78ae6657480a218f06657d5d7db1c4b57efa275159be76bc84fd5b600a22bd4b374a8a6fbb56576799650ce89fe SHA512 d6f46374f48cf78c4114c786fbba4412764527cec020f43ab2a46000fcada98bdb6dfb67ba9db2be3e39a851cba1db97a7154e4cab6df7ce541c0157c781706c -AUX glusterfs-3.12.2-poisoned-sysmacros.patch 431 BLAKE2B 4446b2ba5aad48dfe54c24e0cf802196d6ee4898a77f7a6950e2c1971550deddc7ff232dab021b4bfcb962f4544fa6bebba314b07942228298a5c38758c38442 SHA512 fb9f56254a90325bfc92d60af41075b51460d179eac7149cf1d0dc218d7cc7c9102eaf0591c2763df2fa68d2595f87dd3427d810bc182b61103bd5f9588c77db -AUX glusterfs-4.1.0-silent_rules.patch 500 BLAKE2B bd6812be1059f04bcb34e9408b6ef24f6bd0992cc432ff22da9f21970e11dd5394e1421a6967cae6c026207dcf1d7ae591afaa06e4a25a62c0e79f7f679cd22e SHA512 1cbdfd9f04a917387f0b3299f3ab04074c34e5a4911642ccf4274f1270a97acbf0e27f89c89ce6a1cd2e26238761f956cd1dfa3033d763ead32b0d0fd92a0798 -AUX glusterfs-6.7-fix-rebalance-crash.patch 5861 BLAKE2B caaf103b10d18e4540ab1e516f5ee06aeeb418e12a570d9f4df7c1952302a2035b8ead11fee17d2d797e5872e977ebd8c124aa8bdda26e28a23e8a4173338222 SHA512 149bc10d47424bc40e55cb4053ab251adf88f890a6e4e2e03cddbb23fe411b9d1621fe183b8e09acd36d7945827f85eefcc83c58b01d27f988d6e88bdb1bcafd AUX glusterfs-6.7-fix-seek.patch 1247 BLAKE2B 77ede2514e3afcca12a0d2fef7d24ed66924ffe9ff804bbd48b56a04f27268b8b09471368afaececf9c6c7a304889c5f5271207442ff134d0ad215b46ac2ddf7 SHA512 839eb1d2bb87cae9adbfcc1f81c6187697e0b9c69fcd4c6aea9182c45fef09e3fe3ed3be210c8321a4530f4b9a6a140429ca2437bf5daf8357518ac1732f8434 AUX glusterfs-r1.initd 3065 BLAKE2B 6bf49cfec1c6f685b4c72a79e956ca9823c742bca3d665f0bbffb59bbd2f81b314df62b8aab4eab5c4d23b9e88f43168160cb0faedece3307ddf2347f5282311 SHA512 28c5f401b2ff017d8faf7b290fa265cc5f1a9d60edf11dbae5801e943e7e0833fa8267880efa80c4fc07048d75afd446808c583d2b62a6c5a6bde25d317bde97 AUX glusterfs.confd 129 BLAKE2B 17eeb707fe5ebeb335b0c64ce999268e5f5c6fb6d2ba48467f6f15e73f4c2e883b909da642e6144c637510302834c7c895ebf8b2558344c3bedc9cdc06a44766 SHA512 657c478dd3a60c144543821acd6a87f804d258d4679007aad5108790449e43eda7e0de8e8c0c8e13357a35afbb0d09065423101e5234285a9b96c9ac8b2e33b4 AUX glusterfs.logrotate 611 BLAKE2B e79718d43b8123e8bcc63336977f972e58332536e0bccad84f3abb5e4afd87853d1c70ab689e2c454d94a8d74bb65122e7bf5a35150f60fb268c7757eea7b0d0 SHA512 568728fe77acecb686286b0be6c086fe3448d054d26da15c3846726a8f845ae963e6756c517b413a9eb4d6b646c61972887a35e89846d2d90d364b755e471791 AUX glusterfs.vim 139 BLAKE2B 73fdcb49c0c252784718b461541d5483e118bf1b83f445a6ced3119600aa46c469291e19aa439e2c1e35ffc88c83a74977571d8ccfddf078f65c5c16a44ed3e0 SHA512 6ea3b56b71d7e206a57611dd68160b6b9242a19b5c927560f60881dc28d250f7958c50f788a7b9a41fb46010fdac2d67a8289b909ed1f05b793c900f37ccbfb7 -DIST glusterfs-4.1.8.tar.gz 7835272 BLAKE2B 2546b9c0fe38989df71b8f72b193ce42c499621dcaaa4c5e3deeacfba68179f2280fc699cebeb87486171442152fa8b56b42a0d17465b739769eb227c82307d7 SHA512 950cd2fd774e3eb00f1ec06d54566736b6fbe8d1aed54477a19d9b2727eff8a70ef7ac32815cc7e01d45b5d357fc01af786e16c451f6ad314d472e61ba04ce85 -DIST glusterfs-6.5.tar.gz 7536238 BLAKE2B 35c58da9e8564bda1f34b095f14316148cae2b5ff1820d22ae945a06d34ac57aea968e5914af3f5831250fd591a103fe4022e160bb96d491a7c915b5b68c54e7 SHA512 b7356de07e8126aea80b0489b9ac39ce0d10ea324fe38d05ff5740765e886f80fc7e6bdda9d4db1371d7b955b055cb76ea29e918e759a575db331a6436bad90f -DIST glusterfs-6.7.tar.gz 7565257 BLAKE2B bb38383cad0cbf890b89dd75f7b260d21b381aed6da0bf7cf7b3335941d8e195fe5ff60a1c882df941daeb8ad627fddd1a44223c62d71e2388fd85a7ea46a386 SHA512 64d576c91e5accdb3547dc7216d854e96512c9035ddb87dc4018930f2b0a008ad929cd80ae89a340fca7a8d36e2106a30797d7b08768477b1415db95123e07d4 DIST glusterfs-6.8.tar.gz 7572097 BLAKE2B 76b7c699a4fc864d8074b591b3583030d837a0beb63bb54e93458930a4af29bd9b1874dd33f0b7aecbf57d7dc454d448e67b71f38975281108a9fed76f9cf4aa SHA512 a28af19aa0ab2a356a2b7eff447d6b39ff821d7da59037e91a38d8cb43f51f7007b790f765fcbaccf9107554b59174e72d8b1ae9947e6342d2815bfae1adbad7 -DIST glusterfs-7.2.tar.gz 7630773 BLAKE2B abceafd06ca8f5de1c84708a1a3ec4453c5d536d8811b773fa6f5dd02d6e3d450c329bc4d0fa32d970ff57e82a1fe3aa48ec9c3a7d3d5ca5817a91e8930b1b6e SHA512 fd1059222c4d30fa5c4011083c3c53af44433180ae124c884a774628051d31d95386bef71d4d25ed2b0c5dd8d9a6936601e8e37d963b34d291cb88ea45e31ff2 -DIST glusterfs-7.3.tar.gz 7636144 BLAKE2B 8595e4eafc66b6b926d9aad220b569d7f5ae22b020ee3701db37f3db9dba6a33f805cebe322fb0423a1a8f18b85685411fa967beb34b03028d23b24725c5be00 SHA512 901f55d5084e90f4b5907fbbe7d5f7d1937198b500efc369651970053029b727c0bfc6180b6058a3211523b4e16a63bf821b1a9f81dfc1b87b2061d271ec9b3f +DIST glusterfs-6.9.tar.gz 7580928 BLAKE2B 655544b7ffa70ac9980e1a1041af538f473b6b6c8cb77f6e3447908b903b3a2b3ee0234c18fb71f997f31f24f8a790ab2f5a05a6b392090601db455ac726262a SHA512 3bf167aed4f572f94ad4708c5fff7b578a334af1eb0322c36e15127a2089b6359e8d91a36793d8af93c8f76dbdf6ded649c3e0a6c1a879163c8d8b640cea334b DIST glusterfs-7.5.tar.gz 7649044 BLAKE2B 01088654051a33c3a009b42c6e7adf7cabc52927a83a3331eced428ed3e6bfb3f7198fcc53a2b1dce678ac58c2f2619d02cce72a9850a50f3a26b37d39baeeaa SHA512 dfd8f04fb398daa7d7f58ef978ab69c0a55a313ac2af3287f7e1e7044f708317227c8749af5fd8d56844dfb8ad47bbd3214c42b806e2e21191a6a8617ab0be38 -EBUILD glusterfs-4.1.8.ebuild 6678 BLAKE2B 82e3dc30bfa0b5b883eb17e6ec2f08e0c7f0f4a15f04cbaefe7faa3c3a0d0f42469961c5ee51b807531625d4ff900ae59e3b5d6c835be19877a150556314b804 SHA512 487e8612765bf23c445563fd731aa59aa55fd6bc237720505875f456ad742c95026c2283c1a9cc08d5119d6faf676b8f2d45256a5a4d564e538735dba043b43a -EBUILD glusterfs-6.5.ebuild 6116 BLAKE2B df48f2df594255aa196477ec76a296b9912b0c4bfd5a6dd10276098b58fa9355e4c35cabfa0bdf7d5e85967dd191208d6f2de3cc2f3b428eac3faa80c0ee9c58 SHA512 3d44b94f1b75bfcf5460a0b00b0cf1e557e468dd3baed07e08a21d29238703d4a40743201485a2e117852c05ac46d48d09349cebb2d35d22596debf2a795e5bf -EBUILD glusterfs-6.7-r1.ebuild 6377 BLAKE2B 9b6e89a54e32c74498c7731b82edc47c7855fd686f1d714978000ba7704505d2ca3cc603c7dc79fca17876cbb1e3063b7454d406d28e37752a7449ad66d19767 SHA512 9ddef2dd1443e5340d64dea96ec99c98ee4b2bbf78ff16878e58f9f509530134344e26cb08636916de3d83d8c024e48cd64bcf5a153219785e37dae288019a2a -EBUILD glusterfs-6.8.ebuild 6114 BLAKE2B 3b03b12e3e7acd7008004e5035c2f405afed4ba5deb4e06cac1fad009f6c6fb37f3b78f68bbeef4ede14cab830fae6d17982d2443937e7a9b13e85814dc72e31 SHA512 4449b69a6ba39669e56da6f52b603c87994a5cb43ab236290cb1eb2222c184a5026364fc8eb8412858b7aa7988aa933b21da6c4c21c02adbdb32bb8d20e0ff85 -EBUILD glusterfs-7.2-r1.ebuild 6259 BLAKE2B 30903cd572631cf7dcb6a9eb2fa882d015e5f4f2801c8ae23f2e7e74d6172678ed01761240a0b0fbd74870e8f8d6d14cd173e6612696b6a964eec33259488a7b SHA512 342a661bb98e013d7b9a407aeb5e545fca24763e1363e92b958871e60245f598304a2ba8ab855afdeffeafa6790fa1ee5160f512ee8bf059a9a78128636604e1 -EBUILD glusterfs-7.3.ebuild 6117 BLAKE2B a2f6a3c7f3e9071066dbdf85c9ae072757160de16eccabbd2fe08ba3fc805220451ff77b3bb3819c41199de61435067234de6ab0d98eb1b6695e5d88a0a8bfce SHA512 2c5ea8cd5d9a6f1957a699248678955c01b64125a9bb35bdbd8f71db6424819213f60c3bc69132dca7e89de3ed7ee497dd656d2eff67c3a1a3ea549466c0bb9f +DIST glusterfs-7.6.tar.gz 7653500 BLAKE2B ff3d4817f2a8b85126669cfbe6f58990aaccfffd91464d7acd97d7092c8eb94c21552eaf5e2301e3e6a7f99534b40c2afce1ade593d8ac559baee2d175538333 SHA512 c26b2046e7afdbb37fdd395fd9f692a0513ebb58c91ea223fbbaf9f8b41641b1fd009f2975e187f0feb8d83fb5cd4a8a0c2fdf4591a8a31e920d6bba75ae7c0f +EBUILD glusterfs-6.8.ebuild 6113 BLAKE2B 32f0c68de4c61fef290d80d13de98240e3da590e6ae60a0b5f9088e92d5b7ada00d7e46d55f15209e053a9b1502b49453f910b3af3e05bfdcb5163638d3b82f8 SHA512 0977bd902bc225f0ea0005ef7d057b72669cb002cf1ca35d7f24a036a45321f81ae981eca7ad69275138fdd08d2fcae4971e2302a41ba3f4e01a4bfa677a96bb +EBUILD glusterfs-6.9.ebuild 6116 BLAKE2B e7ee1fe782c1ff3fdbd6ecbbd14494654826de439fd95b137546fd9f7259b14788b6caf1d042780579ecbe630e5fe8e1d1261d6d55b7318aa1ca506c1f3768ee SHA512 0464665f3b72f9fecf6bdbea8c3c19c38c780a9288780ba9390920e23ecb089875801b5f625bc47ad84cce9107e58dd14adbc29478a27ffdcfcf6a0b17dc6475 EBUILD glusterfs-7.5.ebuild 6117 BLAKE2B a2f6a3c7f3e9071066dbdf85c9ae072757160de16eccabbd2fe08ba3fc805220451ff77b3bb3819c41199de61435067234de6ab0d98eb1b6695e5d88a0a8bfce SHA512 2c5ea8cd5d9a6f1957a699248678955c01b64125a9bb35bdbd8f71db6424819213f60c3bc69132dca7e89de3ed7ee497dd656d2eff67c3a1a3ea549466c0bb9f -EBUILD glusterfs-9999.ebuild 6682 BLAKE2B 74804f0808c09e50f19258095f94a9fba8287e7a8780c3ff04ef61d6e5e08b7756d65bdc02866ab747caf1b73b0bdd4050927365d3321af7c30267618392f525 SHA512 b013cf5f46d844c68e5e28e37e1ca208766038b5574f5057e43056b740efa638c5a10cd5fd993f49396f9284d54d3bc95a894311ec30ed5a88678d283119f71c -MISC metadata.xml 1724 BLAKE2B 8d164da1feb4e49490543de9841ec60282199451f2dcd6920c6781bcff41cb1248fcea7895501db0501f01a1b87b27e91a068adacd87842630f17efebf4d8954 SHA512 5bc076910d574a03f1b29db15fe1933e1b9b6f0f2cde654a6934397f7fa6f10c5063dd0318248d522da508af1ce56d16f1a204bc4be8429430f189143baaf043 +EBUILD glusterfs-7.6.ebuild 6116 BLAKE2B e7ee1fe782c1ff3fdbd6ecbbd14494654826de439fd95b137546fd9f7259b14788b6caf1d042780579ecbe630e5fe8e1d1261d6d55b7318aa1ca506c1f3768ee SHA512 0464665f3b72f9fecf6bdbea8c3c19c38c780a9288780ba9390920e23ecb089875801b5f625bc47ad84cce9107e58dd14adbc29478a27ffdcfcf6a0b17dc6475 +EBUILD glusterfs-9999.ebuild 5975 BLAKE2B e7dff556a3ce1af02657aa623f86870c574524a731ac24b15890e49c1ac1d7c80224354141b4aa59b64c47f851996aafb76ce34fc790b88ba8a8faf12f34bd4d SHA512 6daf0254c09e6d04580a3dfb819380f50fb4721b1afb2c2e765f9c1f80acaa7bfbe131d587ec0a5d44cb56263e03808422b60731eb9b2209698b66a28ccde9c8 +MISC metadata.xml 1291 BLAKE2B 72dac243dd9994bc08e89169ab70d5d1e096b0cf7a2aa7b47a04c17ff3711ffec3a42c9c43a10c6d5a5a544ab189913efe1405400bdf213f1566d84732077b6a SHA512 4260fbc16780f89d233100581973ed4fd480c19ffe514b1c8091d553bb1f83a475219918784d4d9a8b985b7a88e57c9ce3912cf5857c76cb2487282f26677df8 diff --git a/sys-cluster/glusterfs/files/glusterfs-3.12.2-poisoned-sysmacros.patch b/sys-cluster/glusterfs/files/glusterfs-3.12.2-poisoned-sysmacros.patch deleted file mode 100644 index 341535163747..000000000000 --- a/sys-cluster/glusterfs/files/glusterfs-3.12.2-poisoned-sysmacros.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff --git a/libglusterfs/src/compat.h b/libglusterfs/src/compat.h -index 1d0ac27e8..b1a7c0a93 100644 ---- a/libglusterfs/src/compat.h -+++ b/libglusterfs/src/compat.h -@@ -510,6 +510,7 @@ int gf_mkostemp (char *tmpl, int suffixlen, int flags); - /* Use run API, see run.h */ - #include <stdlib.h> /* system(), mkostemp() */ - #include <stdio.h> /* popen() */ -+#include <sys/sysmacros.h> - #pragma GCC poison system mkostemp popen - #endif diff --git a/sys-cluster/glusterfs/files/glusterfs-4.1.0-silent_rules.patch b/sys-cluster/glusterfs/files/glusterfs-4.1.0-silent_rules.patch deleted file mode 100644 index 236898ab8c14..000000000000 --- a/sys-cluster/glusterfs/files/glusterfs-4.1.0-silent_rules.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -Naur a/configure.ac b/configure.ac ---- a/configure.ac 2018-03-08 22:50:23.221758897 +0000 -+++ b/configure.ac 2018-03-08 22:53:12.776129757 +0000 -@@ -19,11 +19,6 @@ - #but libglusterfs fails to build with contrib (Then are not set up that way?) - #AM_INIT_AUTOMAKE([subdir-objects]) - --m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)]) -- --if make --help 2>&1 | grep -q no-print-directory; then -- AM_MAKEFLAGS="$AM_MAKEFLAGS --no-print-directory"; --fi - - AC_CONFIG_HEADERS([config.h site.h]) - diff --git a/sys-cluster/glusterfs/files/glusterfs-6.7-fix-rebalance-crash.patch b/sys-cluster/glusterfs/files/glusterfs-6.7-fix-rebalance-crash.patch deleted file mode 100644 index e5a31623a32f..000000000000 --- a/sys-cluster/glusterfs/files/glusterfs-6.7-fix-rebalance-crash.patch +++ /dev/null @@ -1,185 +0,0 @@ -From ff1eae7f882b8f12380e0c35a9a73b672583cd4c Mon Sep 17 00:00:00 2001 -From: N Balachandran <nbalacha@redhat.com> -Date: Tue, 01 Oct 2019 17:37:15 +0530 -Subject: [PATCH] cluster/dht: Correct fd processing loop - -The fd processing loops in the -dht_migration_complete_check_task and the -dht_rebalance_inprogress_task functions were unsafe -and could cause an open to be sent on an already freed -fd. This has been fixed. - -> Change-Id: I0a3c7d2fba314089e03dfd704f9dceb134749540 -> Fixes: bz#1757399 -> Signed-off-by: N Balachandran <nbalacha@redhat.com> -> (cherry picked from commit 9b15867070b0cc241ab165886292ecffc3bc0aed) - -Change-Id: I0a3c7d2fba314089e03dfd704f9dceb134749540 -Fixes: bz#1786983 -Signed-off-by: Mohit Agrawal <moagrawa@redhat.com> ---- - -diff --git a/xlators/cluster/dht/src/dht-helper.c b/xlators/cluster/dht/src/dht-helper.c -index acad493..4f7370d 100644 ---- a/xlators/cluster/dht/src/dht-helper.c -+++ b/xlators/cluster/dht/src/dht-helper.c -@@ -1290,6 +1290,7 @@ - fd_t *tmp = NULL; - uint64_t tmp_miginfo = 0; - dht_migrate_info_t *miginfo = NULL; -+ gf_boolean_t skip_open = _gf_false; - int open_failed = 0; - - this = THIS; -@@ -1428,24 +1429,34 @@ - * the loop will cause the destruction of the fd. So we need to - * iterate the list safely because iter_fd cannot be trusted. - */ -- list_for_each_entry_safe(iter_fd, tmp, &inode->fd_list, inode_list) -- { -- if (fd_is_anonymous(iter_fd)) -- continue; -- -- if (dht_fd_open_on_dst(this, iter_fd, dst_node)) -- continue; -- -+ iter_fd = list_entry((&inode->fd_list)->next, typeof(*iter_fd), inode_list); -+ while (&iter_fd->inode_list != (&inode->fd_list)) { -+ if (fd_is_anonymous(iter_fd) || -+ (dht_fd_open_on_dst(this, iter_fd, dst_node))) { -+ if (!tmp) { -+ iter_fd = list_entry(iter_fd->inode_list.next, typeof(*iter_fd), -+ inode_list); -+ continue; -+ } -+ skip_open = _gf_true; -+ } - /* We need to release the inode->lock before calling - * syncop_open() to avoid possible deadlocks. However this - * can cause the iter_fd to be released by other threads. - * To avoid this, we take a reference before releasing the - * lock. - */ -- __fd_ref(iter_fd); -+ fd_ref(iter_fd); - - UNLOCK(&inode->lock); - -+ if (tmp) { -+ fd_unref(tmp); -+ tmp = NULL; -+ } -+ if (skip_open) -+ goto next; -+ - /* flags for open are stripped down to allow following the - * new location of the file, otherwise we can get EEXIST or - * truncate the file again as rebalance is moving the data */ -@@ -1467,9 +1478,11 @@ - dht_fd_ctx_set(this, iter_fd, dst_node); - } - -- fd_unref(iter_fd); -- -+ next: - LOCK(&inode->lock); -+ skip_open = _gf_false; -+ tmp = iter_fd; -+ iter_fd = list_entry(tmp->inode_list.next, typeof(*tmp), inode_list); - } - - SYNCTASK_SETID(frame->root->uid, frame->root->gid); -@@ -1482,6 +1495,10 @@ - - unlock: - UNLOCK(&inode->lock); -+ if (tmp) { -+ fd_unref(tmp); -+ tmp = NULL; -+ } - - out: - if (dict) { -@@ -1563,6 +1580,7 @@ - int open_failed = 0; - uint64_t tmp_miginfo = 0; - dht_migrate_info_t *miginfo = NULL; -+ gf_boolean_t skip_open = _gf_false; - - this = THIS; - frame = data; -@@ -1683,24 +1701,40 @@ - * the loop will cause the destruction of the fd. So we need to - * iterate the list safely because iter_fd cannot be trusted. - */ -- list_for_each_entry_safe(iter_fd, tmp, &inode->fd_list, inode_list) -- { -- if (fd_is_anonymous(iter_fd)) -- continue; -- -- if (dht_fd_open_on_dst(this, iter_fd, dst_node)) -- continue; -- -+ iter_fd = list_entry((&inode->fd_list)->next, typeof(*iter_fd), inode_list); -+ while (&iter_fd->inode_list != (&inode->fd_list)) { - /* We need to release the inode->lock before calling - * syncop_open() to avoid possible deadlocks. However this - * can cause the iter_fd to be released by other threads. - * To avoid this, we take a reference before releasing the - * lock. - */ -- __fd_ref(iter_fd); - -+ if (fd_is_anonymous(iter_fd) || -+ (dht_fd_open_on_dst(this, iter_fd, dst_node))) { -+ if (!tmp) { -+ iter_fd = list_entry(iter_fd->inode_list.next, typeof(*iter_fd), -+ inode_list); -+ continue; -+ } -+ skip_open = _gf_true; -+ } -+ -+ /* Yes, this is ugly but there isn't a cleaner way to do this -+ * the fd_ref is an atomic increment so not too bad. We want to -+ * reduce the number of inode locks and unlocks. -+ */ -+ -+ fd_ref(iter_fd); - UNLOCK(&inode->lock); - -+ if (tmp) { -+ fd_unref(tmp); -+ tmp = NULL; -+ } -+ if (skip_open) -+ goto next; -+ - /* flags for open are stripped down to allow following the - * new location of the file, otherwise we can get EEXIST or - * truncate the file again as rebalance is moving the data */ -@@ -1721,9 +1755,11 @@ - dht_fd_ctx_set(this, iter_fd, dst_node); - } - -- fd_unref(iter_fd); -- -+ next: - LOCK(&inode->lock); -+ skip_open = _gf_false; -+ tmp = iter_fd; -+ iter_fd = list_entry(tmp->inode_list.next, typeof(*tmp), inode_list); - } - - SYNCTASK_SETID(frame->root->uid, frame->root->gid); -@@ -1731,6 +1767,10 @@ - unlock: - UNLOCK(&inode->lock); - -+ if (tmp) { -+ fd_unref(tmp); -+ tmp = NULL; -+ } - if (open_failed) { - ret = -1; - goto out; diff --git a/sys-cluster/glusterfs/glusterfs-4.1.8.ebuild b/sys-cluster/glusterfs/glusterfs-4.1.8.ebuild deleted file mode 100644 index 351790fe5a70..000000000000 --- a/sys-cluster/glusterfs/glusterfs-4.1.8.ebuild +++ /dev/null @@ -1,223 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python2_7 ) - -inherit autotools elisp-common python-single-r1 systemd user - -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut '1-2')/${PV}/${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" -fi - -DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" -HOMEPAGE="https://www.gluster.org/" - -LICENSE="|| ( GPL-2 LGPL-3+ )" -SLOT="0" -IUSE="bd-xlator crypt-xlator debug emacs +fuse +georeplication glupy infiniband ipv6 libressl +libtirpc qemu-block rsyslog static-libs +syslog systemtap test +tiering vim-syntax +xml" - -REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) - glupy? ( ${PYTHON_REQUIRED_USE} ) - ipv6? ( libtirpc )" - -# the tests must be run as root -RESTRICT="test" - -# sys-apps/util-linux is required for libuuid -RDEPEND="bd-xlator? ( sys-fs/lvm2 ) - !elibc_glibc? ( sys-libs/argp-standalone ) - emacs? ( >=app-editors/emacs-23.1:* ) - fuse? ( >=sys-fs/fuse-2.7.0:0 ) - georeplication? ( ${PYTHON_DEPS} ) - infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* ) - libtirpc? ( net-libs/libtirpc:= ) - !libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) ) - qemu-block? ( dev-libs/glib:2 ) - systemtap? ( dev-util/systemtap ) - tiering? ( dev-db/sqlite:3 ) - xml? ( dev-libs/libxml2 ) - sys-libs/readline:= - dev-libs/libaio - !libressl? ( dev-libs/openssl:=[-bindist] ) - libressl? ( dev-libs/libressl:= ) - dev-libs/userspace-rcu:= - net-libs/rpcsvc-proto - sys-apps/util-linux" -DEPEND="${RDEPEND} - virtual/acl - virtual/pkgconfig - sys-devel/bison - sys-devel/flex - test? ( >=dev-util/cmocka-1.0.1 - app-benchmarks/dbench - dev-vcs/git - net-fs/nfs-utils - virtual/perl-Test-Harness - dev-libs/yajl - sys-fs/xfsprogs - sys-apps/attr )" - -SITEFILE="50${PN}-mode-gentoo.el" - -PATCHES=( - "${FILESDIR}/${PN}-3.12.2-poisoned-sysmacros.patch" - "${FILESDIR}/${PN}-4.1.0-silent_rules.patch" -) - -DOCS=( AUTHORS ChangeLog NEWS README.md THANKS ) - -# Maintainer notes: -# * The build system will always configure & build argp-standalone but it'll never use it -# if the argp.h header is found in the system. Which should be the case with -# glibc or if argp-standalone is installed. - -pkg_setup() { - python_setup "python2*" - python-single-r1_pkg_setup - - # Needed for statedumps - # https://github.com/gluster/glusterfs/commit/0e50c4b3ea734456c14e2d7a578463999bd332c3 - enewgroup gluster - enewuser gluster -1 -1 "${EPREFIX}"/var/run/gluster gluster -} - -src_prepare() { - default - - # build rpc-transport and xlators only once as shared libs - find rpc/rpc-transport xlators -name Makefile.am | - xargs sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' || die - - # fix execution permissions - chmod +x libglusterfs/src/gen-defaults.py || die - - eautoreconf -} - -src_configure() { - econf \ - --disable-fusermount \ - $(use_enable debug) \ - $(use_enable bd-xlator) \ - $(use_enable crypt-xlator) \ - $(use_enable fuse fuse-client) \ - $(use_enable georeplication) \ - $(use_enable glupy) \ - $(use_enable infiniband ibverbs) \ - $(use_enable qemu-block) \ - $(use_enable static-libs static) \ - $(use_enable syslog) \ - $(use_enable systemtap) \ - $(use_enable test cmocka) \ - $(use_enable tiering) \ - $(use_enable xml xml-output) \ - $(use libtirpc || echo --without-libtirpc) \ - $(use ipv6 && echo --with-ipv6-default) \ - --with-tmpfilesdir="${EPREFIX}"/etc/tmpfiles.d \ - --localstatedir="${EPREFIX}"/var -} - -src_compile() { - default - use emacs && elisp-compile extras/glusterfs-mode.el -} - -src_install() { - default - - rm \ - "${ED}"/etc/glusterfs/glusterfs-{georep-,}logrotate \ - "${ED}"/etc/glusterfs/gluster-rsyslog-*.conf \ - "${ED}"/usr/share/doc/${PF}/glusterfs{-mode.el,.vim} || die "removing false files failed" - - insinto /etc/logrotate.d - newins "${FILESDIR}"/glusterfs.logrotate glusterfs - - if use rsyslog ; then - insinto /etc/rsyslog.d - newins extras/gluster-rsyslog-7.2.conf 60-gluster.conf - fi - - if use emacs ; then - elisp-install ${PN} extras/glusterfs-mode.el* - elisp-site-file-install "${FILESDIR}/${SITEFILE}" - fi - - if use vim-syntax ; then - insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}"/${PN}.vim - insinto /usr/share/vim/vimfiles/syntax; doins extras/${PN}.vim - fi - - # insert some other tools which might be useful - insinto /usr/share/glusterfs/scripts - doins \ - extras/backend-{cleanup,xattr-sanitize}.sh \ - extras/clear_xattrs.sh \ - extras/migrate-unify-to-distribute.sh - - # correct permissions on installed scripts - # fperms 0755 /usr/share/glusterfs/scripts/*.sh - chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die - - if use georeplication ; then - # move the gsync-sync-gfid tool to a binary path - # and set a symlink to be compliant with all other distros - mv "${ED}"/usr/{share/glusterfs/scripts/gsync-sync-gfid,libexec/glusterfs/} || die - dosym ../../../libexec/glusterfs/gsync-sync-gfid /usr/share/glusterfs/scripts/gsync-sync-gfid - fi - - newinitd "${FILESDIR}/${PN}-r1.initd" glusterfsd - newinitd "${FILESDIR}/glusterd-r3.initd" glusterd - newconfd "${FILESDIR}/${PN}.confd" glusterfsd - - keepdir /var/log/${PN} - keepdir /var/lib/glusterd/{events,glusterfind/.keys} - - # QA - rm -r "${ED}/var/run/" || die - if ! use static-libs; then - find "${D}" -type f -name '*.la' -delete || die - fi - - # fix all shebang for python2 #560750 - python_fix_shebang "${ED}" -} - -src_test() { - ./run-tests.sh || die -} - -pkg_postinst() { - elog "Starting with ${PN}-3.1.0, you can use the glusterd daemon to configure your" - elog "volumes dynamically. To do so, simply use the gluster CLI after running:" - elog " /etc/init.d/glusterd start" - echo - elog "For static configurations, the glusterfsd startup script can be multiplexed." - elog "The default startup script uses /etc/conf.d/glusterfsd to configure the" - elog "separate service. To create additional instances of the glusterfsd service" - elog "simply create a symlink to the glusterfsd startup script." - echo - elog "Example:" - elog " # ln -s glusterfsd /etc/init.d/glusterfsd2" - elog " # ${EDITOR} /etc/glusterfs/glusterfsd2.vol" - elog "You can now treat glusterfsd2 like any other service" - echo - ewarn "You need to use a ntp client to keep the clocks synchronized across all" - ewarn "of your servers. Setup a NTP synchronizing service before attempting to" - ewarn "run GlusterFS." - echo - elog "If you are upgrading from a previous version of ${PN}, please read:" - elog " http://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_$(ver_cut '1-2')/" - - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/sys-cluster/glusterfs/glusterfs-6.5.ebuild b/sys-cluster/glusterfs/glusterfs-6.5.ebuild deleted file mode 100644 index 895462bd41ab..000000000000 --- a/sys-cluster/glusterfs/glusterfs-6.5.ebuild +++ /dev/null @@ -1,204 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{6,7} ) - -inherit autotools elisp-common python-single-r1 systemd user - -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" -HOMEPAGE="https://www.gluster.org/" - -LICENSE="|| ( GPL-2 LGPL-3+ )" -SLOT="0" -IUSE="debug emacs +fuse +georeplication infiniband ipv6 libressl +libtirpc rsyslog static-libs +syslog test vim-syntax +xml" - -REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) - ipv6? ( libtirpc )" - -# the tests must be run as root -RESTRICT="test" - -# sys-apps/util-linux is required for libuuid -RDEPEND="!elibc_glibc? ( sys-libs/argp-standalone ) - emacs? ( >=app-editors/emacs-23.1:* ) - fuse? ( >=sys-fs/fuse-2.7.0:0 ) - georeplication? ( ${PYTHON_DEPS} ) - infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* ) - libtirpc? ( net-libs/libtirpc:= ) - !libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) ) - xml? ( dev-libs/libxml2 ) - sys-libs/readline:= - dev-libs/libaio - !libressl? ( dev-libs/openssl:=[-bindist] ) - libressl? ( dev-libs/libressl:= ) - dev-libs/userspace-rcu:= - net-libs/rpcsvc-proto - sys-apps/util-linux" -DEPEND="${RDEPEND} - virtual/acl - virtual/pkgconfig - sys-devel/bison - sys-devel/flex - test? ( >=dev-util/cmocka-1.0.1 - app-benchmarks/dbench - dev-vcs/git - net-fs/nfs-utils - virtual/perl-Test-Harness - dev-libs/yajl - sys-fs/xfsprogs - sys-apps/attr )" - -SITEFILE="50${PN}-mode-gentoo.el" - -DOCS=( AUTHORS ChangeLog NEWS README.md THANKS ) - -# Maintainer notes: -# * The build system will always configure & build argp-standalone but it'll never use it -# if the argp.h header is found in the system. Which should be the case with -# glibc or if argp-standalone is installed. - -pkg_setup() { - python_setup "python3*" - python-single-r1_pkg_setup - - # Needed for statedumps - # https://github.com/gluster/glusterfs/commit/0e50c4b3ea734456c14e2d7a578463999bd332c3 - enewgroup gluster - enewuser gluster -1 -1 "${EPREFIX}"/var/run/gluster gluster -} - -src_prepare() { - default - - # build rpc-transport and xlators only once as shared libs - find rpc/rpc-transport xlators -name Makefile.am | - xargs sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' || die - - # fix execution permissions - chmod +x libglusterfs/src/gen-defaults.py || die - - eautoreconf -} - -src_configure() { - econf \ - --disable-fusermount \ - $(use_enable debug) \ - $(use_enable fuse fuse-client) \ - $(use_enable georeplication) \ - $(use_enable infiniband ibverbs) \ - $(use_enable static-libs static) \ - $(use_enable syslog) \ - $(use_enable test cmocka) \ - $(use_enable xml xml-output) \ - $(use libtirpc || echo --without-libtirpc) \ - $(use ipv6 && echo --with-ipv6-default) \ - --with-tmpfilesdir="${EPREFIX}"/etc/tmpfiles.d \ - --localstatedir="${EPREFIX}"/var -} - -src_compile() { - default - use emacs && elisp-compile extras/glusterfs-mode.el -} - -src_install() { - default - - rm \ - "${ED}"/etc/glusterfs/glusterfs-{georep-,}logrotate \ - "${ED}"/etc/glusterfs/gluster-rsyslog-*.conf \ - "${ED}"/usr/share/doc/${PF}/glusterfs{-mode.el,.vim} || die "removing false files failed" - - insinto /etc/logrotate.d - newins "${FILESDIR}"/glusterfs.logrotate glusterfs - - if use rsyslog ; then - insinto /etc/rsyslog.d - newins extras/gluster-rsyslog-7.2.conf 60-gluster.conf - fi - - if use emacs ; then - elisp-install ${PN} extras/glusterfs-mode.el* - elisp-site-file-install "${FILESDIR}/${SITEFILE}" - fi - - if use vim-syntax ; then - insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}"/${PN}.vim - insinto /usr/share/vim/vimfiles/syntax; doins extras/${PN}.vim - fi - - # insert some other tools which might be useful - insinto /usr/share/glusterfs/scripts - doins \ - extras/backend-{cleanup,xattr-sanitize}.sh \ - extras/clear_xattrs.sh \ - extras/migrate-unify-to-distribute.sh - - # correct permissions on installed scripts - # fperms 0755 /usr/share/glusterfs/scripts/*.sh - chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die - - if use georeplication ; then - # move the gsync-sync-gfid tool to a binary path - # and set a symlink to be compliant with all other distros - mv "${ED}"/usr/{share/glusterfs/scripts/gsync-sync-gfid,libexec/glusterfs/} || die - dosym ../../../libexec/glusterfs/gsync-sync-gfid /usr/share/glusterfs/scripts/gsync-sync-gfid - fi - - newinitd "${FILESDIR}/${PN}-r1.initd" glusterfsd - newinitd "${FILESDIR}/glusterd-r3.initd" glusterd - newconfd "${FILESDIR}/${PN}.confd" glusterfsd - - keepdir /var/log/${PN} - keepdir /var/lib/glusterd/{events,glusterfind/.keys} - - # QA - rm -r "${ED}/var/run/" || die - if ! use static-libs; then - find "${D}" -type f -name '*.la' -delete || die - fi -} - -src_test() { - ./run-tests.sh || die -} - -pkg_postinst() { - elog "Starting with ${PN}-3.1.0, you can use the glusterd daemon to configure your" - elog "volumes dynamically. To do so, simply use the gluster CLI after running:" - elog " /etc/init.d/glusterd start" - echo - elog "For static configurations, the glusterfsd startup script can be multiplexed." - elog "The default startup script uses /etc/conf.d/glusterfsd to configure the" - elog "separate service. To create additional instances of the glusterfsd service" - elog "simply create a symlink to the glusterfsd startup script." - echo - elog "Example:" - elog " # ln -s glusterfsd /etc/init.d/glusterfsd2" - elog " # ${EDITOR} /etc/glusterfs/glusterfsd2.vol" - elog "You can now treat glusterfsd2 like any other service" - echo - ewarn "You need to use a ntp client to keep the clocks synchronized across all" - ewarn "of your servers. Setup a NTP synchronizing service before attempting to" - ewarn "run GlusterFS." - echo - elog "If you are upgrading from a previous version of ${PN}, please read:" - elog " http://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_$(ver_cut '1-2')/" - - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/sys-cluster/glusterfs/glusterfs-6.7-r1.ebuild b/sys-cluster/glusterfs/glusterfs-6.7-r1.ebuild deleted file mode 100644 index 210f6b936ef1..000000000000 --- a/sys-cluster/glusterfs/glusterfs-6.7-r1.ebuild +++ /dev/null @@ -1,211 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{6,7,8} ) - -inherit autotools elisp-common python-single-r1 systemd user - -if [[ ${PV#9999} != ${PV} ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" -else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" -HOMEPAGE="https://www.gluster.org/" - -LICENSE="|| ( GPL-2 LGPL-3+ )" -SLOT="0" -IUSE="debug emacs +fuse +georeplication infiniband ipv6 libressl +libtirpc rsyslog static-libs +syslog test vim-syntax +xml" - -REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) - ipv6? ( libtirpc )" - -# the tests must be run as root -RESTRICT="test" - -# sys-apps/util-linux is required for libuuid -RDEPEND="!elibc_glibc? ( sys-libs/argp-standalone ) - emacs? ( >=app-editors/emacs-23.1:* ) - fuse? ( >=sys-fs/fuse-2.7.0:0 ) - georeplication? ( ${PYTHON_DEPS} ) - infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* ) - libtirpc? ( net-libs/libtirpc:= ) - !libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) ) - xml? ( dev-libs/libxml2 ) - sys-libs/readline:= - dev-libs/libaio - !libressl? ( dev-libs/openssl:=[-bindist] ) - libressl? ( dev-libs/libressl:= ) - dev-libs/userspace-rcu:= - net-libs/rpcsvc-proto - sys-apps/util-linux" -DEPEND="${RDEPEND} - virtual/acl - virtual/pkgconfig - sys-devel/bison - sys-devel/flex - test? ( >=dev-util/cmocka-1.0.1 - app-benchmarks/dbench - dev-vcs/git - net-fs/nfs-utils - virtual/perl-Test-Harness - dev-libs/yajl - sys-fs/xfsprogs - sys-apps/attr )" - -SITEFILE="50${PN}-mode-gentoo.el" - -DOCS=( AUTHORS ChangeLog NEWS README.md THANKS ) - -# Maintainer notes: -# * The build system will always configure & build argp-standalone but it'll never use it -# if the argp.h header is found in the system. Which should be the case with -# glibc or if argp-standalone is installed. - -pkg_setup() { - python_setup "python3*" - python-single-r1_pkg_setup - - # Needed for statedumps - # https://github.com/gluster/glusterfs/commit/0e50c4b3ea734456c14e2d7a578463999bd332c3 - enewgroup gluster - enewuser gluster -1 -1 "${EPREFIX}"/var/run/gluster gluster -} - -src_prepare() { - default - - # https://bugzilla.redhat.com/show_bug.cgi?id=1786983 - eapply "${FILESDIR}/glusterfs-6.7-fix-rebalance-crash.patch" - - # https://bugs.gentoo.org/705536 - # https://bugzilla.redhat.com/show_bug.cgi?id=1793990 - eapply "${FILESDIR}/glusterfs-6.7-fix-seek.patch" - - # build rpc-transport and xlators only once as shared libs - find rpc/rpc-transport xlators -name Makefile.am | - xargs sed -i 's|.*$(top_srcdir).*\.sym|\0 -shared|' || die - - # fix execution permissions - chmod +x libglusterfs/src/gen-defaults.py || die - - eautoreconf -} - -src_configure() { - econf \ - --disable-fusermount \ - $(use_enable debug) \ - $(use_enable fuse fuse-client) \ - $(use_enable georeplication) \ - $(use_enable infiniband ibverbs) \ - $(use_enable static-libs static) \ - $(use_enable syslog) \ - $(use_enable test cmocka) \ - $(use_enable xml xml-output) \ - $(use libtirpc || echo --without-libtirpc) \ - $(use ipv6 && echo --with-ipv6-default) \ - --with-tmpfilesdir="${EPREFIX}"/etc/tmpfiles.d \ - --localstatedir="${EPREFIX}"/var -} - -src_compile() { - default - use emacs && elisp-compile extras/glusterfs-mode.el -} - -src_install() { - default - - rm \ - "${ED}"/etc/glusterfs/glusterfs-{georep-,}logrotate \ - "${ED}"/etc/glusterfs/gluster-rsyslog-*.conf \ - "${ED}"/usr/share/doc/${PF}/glusterfs{-mode.el,.vim} || die "removing false files failed" - - insinto /etc/logrotate.d - newins "${FILESDIR}"/glusterfs.logrotate glusterfs - - if use rsyslog ; then - insinto /etc/rsyslog.d - newins extras/gluster-rsyslog-7.2.conf 60-gluster.conf - fi - - if use emacs ; then - elisp-install ${PN} extras/glusterfs-mode.el* - elisp-site-file-install "${FILESDIR}/${SITEFILE}" - fi - - if use vim-syntax ; then - insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}"/${PN}.vim - insinto /usr/share/vim/vimfiles/syntax; doins extras/${PN}.vim - fi - - # insert some other tools which might be useful - insinto /usr/share/glusterfs/scripts - doins \ - extras/backend-{cleanup,xattr-sanitize}.sh \ - extras/clear_xattrs.sh \ - extras/migrate-unify-to-distribute.sh - - # correct permissions on installed scripts - # fperms 0755 /usr/share/glusterfs/scripts/*.sh - chmod 0755 "${ED}"/usr/share/glusterfs/scripts/*.sh || die - - if use georeplication ; then - # move the gsync-sync-gfid tool to a binary path - # and set a symlink to be compliant with all other distros - mv "${ED}"/usr/{share/glusterfs/scripts/gsync-sync-gfid,libexec/glusterfs/} || die - dosym ../../../libexec/glusterfs/gsync-sync-gfid /usr/share/glusterfs/scripts/gsync-sync-gfid - fi - - newinitd "${FILESDIR}/${PN}-r1.initd" glusterfsd - newinitd "${FILESDIR}/glusterd-r3.initd" glusterd - newconfd "${FILESDIR}/${PN}.confd" glusterfsd - - keepdir /var/log/${PN} - keepdir /var/lib/glusterd/{events,glusterfind/.keys} - - # QA - rm -r "${ED}/var/run/" || die - if ! use static-libs; then - find "${D}" -type f -name '*.la' -delete || die - fi -} - -src_test() { - ./run-tests.sh || die -} - -pkg_postinst() { - elog "Starting with ${PN}-3.1.0, you can use the glusterd daemon to configure your" - elog "volumes dynamically. To do so, simply use the gluster CLI after running:" - elog " /etc/init.d/glusterd start" - echo - elog "For static configurations, the glusterfsd startup script can be multiplexed." - elog "The default startup script uses /etc/conf.d/glusterfsd to configure the" - elog "separate service. To create additional instances of the glusterfsd service" - elog "simply create a symlink to the glusterfsd startup script." - echo - elog "Example:" - elog " # ln -s glusterfsd /etc/init.d/glusterfsd2" - elog " # ${EDITOR} /etc/glusterfs/glusterfsd2.vol" - elog "You can now treat glusterfsd2 like any other service" - echo - ewarn "You need to use a ntp client to keep the clocks synchronized across all" - ewarn "of your servers. Setup a NTP synchronizing service before attempting to" - ewarn "run GlusterFS." - echo - elog "If you are upgrading from a previous version of ${PN}, please read:" - elog " http://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_$(ver_cut '1-2')/" - - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/sys-cluster/glusterfs/glusterfs-6.8.ebuild b/sys-cluster/glusterfs/glusterfs-6.8.ebuild index 75c496e8940a..766aac8d9a85 100644 --- a/sys-cluster/glusterfs/glusterfs-6.8.ebuild +++ b/sys-cluster/glusterfs/glusterfs-6.8.ebuild @@ -12,7 +12,7 @@ if [[ ${PV#9999} != ${PV} ]]; then EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" else SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 ~x86" + KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" fi DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" diff --git a/sys-cluster/glusterfs/glusterfs-7.3.ebuild b/sys-cluster/glusterfs/glusterfs-6.9.ebuild index 5812e989cf9c..14d47e542154 100644 --- a/sys-cluster/glusterfs/glusterfs-7.3.ebuild +++ b/sys-cluster/glusterfs/glusterfs-6.9.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) +PYTHON_COMPAT=( python3_{6..9} ) inherit autotools elisp-common python-single-r1 systemd diff --git a/sys-cluster/glusterfs/glusterfs-7.2-r1.ebuild b/sys-cluster/glusterfs/glusterfs-7.6.ebuild index a70a74de42e4..14d47e542154 100644 --- a/sys-cluster/glusterfs/glusterfs-7.2-r1.ebuild +++ b/sys-cluster/glusterfs/glusterfs-7.6.ebuild @@ -3,9 +3,9 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) +PYTHON_COMPAT=( python3_{6..9} ) -inherit autotools elisp-common python-single-r1 systemd user +inherit autotools elisp-common python-single-r1 systemd if [[ ${PV#9999} != ${PV} ]]; then inherit git-r3 @@ -29,26 +29,30 @@ REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) RESTRICT="test" # sys-apps/util-linux is required for libuuid -RDEPEND="!elibc_glibc? ( sys-libs/argp-standalone ) +RDEPEND=" + acct-group/gluster + acct-user/gluster + dev-libs/libaio + dev-libs/userspace-rcu:= + net-libs/rpcsvc-proto + sys-apps/util-linux + sys-libs/readline:= emacs? ( >=app-editors/emacs-23.1:* ) fuse? ( >=sys-fs/fuse-2.7.0:0 ) georeplication? ( ${PYTHON_DEPS} ) infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* ) + xml? ( dev-libs/libxml2 ) + !elibc_glibc? ( sys-libs/argp-standalone ) libtirpc? ( net-libs/libtirpc:= ) !libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) ) - xml? ( dev-libs/libxml2 ) - sys-libs/readline:= - dev-libs/libaio !libressl? ( dev-libs/openssl:=[-bindist] ) libressl? ( dev-libs/libressl:= ) - dev-libs/userspace-rcu:= - net-libs/rpcsvc-proto - sys-apps/util-linux" -DEPEND="${RDEPEND} - virtual/acl - virtual/pkgconfig +" +DEPEND=" + ${RDEPEND} sys-devel/bison sys-devel/flex + virtual/acl test? ( >=dev-util/cmocka-1.0.1 app-benchmarks/dbench dev-vcs/git @@ -56,7 +60,11 @@ DEPEND="${RDEPEND} virtual/perl-Test-Harness dev-libs/yajl sys-fs/xfsprogs - sys-apps/attr )" + sys-apps/attr ) +" +BDEPEND=" + virtual/pkgconfig +" SITEFILE="50${PN}-mode-gentoo.el" @@ -70,11 +78,6 @@ DOCS=( AUTHORS ChangeLog NEWS README.md THANKS ) pkg_setup() { python_setup "python3*" python-single-r1_pkg_setup - - # Needed for statedumps - # https://github.com/gluster/glusterfs/commit/0e50c4b3ea734456c14e2d7a578463999bd332c3 - enewgroup gluster - enewuser gluster -1 -1 "${EPREFIX}"/var/run/gluster gluster } src_prepare() { diff --git a/sys-cluster/glusterfs/glusterfs-9999.ebuild b/sys-cluster/glusterfs/glusterfs-9999.ebuild index 544b9e693be5..718ab4740bc1 100644 --- a/sys-cluster/glusterfs/glusterfs-9999.ebuild +++ b/sys-cluster/glusterfs/glusterfs-9999.ebuild @@ -3,15 +3,15 @@ EAPI=7 -PYTHON_COMPAT=( python2_7 ) +PYTHON_COMPAT=( python3_{6..9} ) -inherit autotools elisp-common python-single-r1 systemd user +inherit autotools elisp-common python-single-r1 systemd if [[ ${PV#9999} != ${PV} ]]; then inherit git-r3 EGIT_REPO_URI="https://github.com/gluster/glusterfs.git" else - SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut '1-2')/${PV}/${P}.tar.gz" + SRC_URI="https://download.gluster.org/pub/gluster/${PN}/$(ver_cut 1)/${PV}/${P}.tar.gz" KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" fi @@ -20,40 +20,39 @@ HOMEPAGE="https://www.gluster.org/" LICENSE="|| ( GPL-2 LGPL-3+ )" SLOT="0" -IUSE="bd-xlator crypt-xlator debug emacs +fuse +georeplication glupy infiniband ipv6 libressl +libtirpc qemu-block rsyslog static-libs +syslog systemtap test +tiering vim-syntax +xml" +IUSE="debug emacs +fuse +georeplication infiniband ipv6 libressl +libtirpc rsyslog static-libs +syslog test vim-syntax +xml" REQUIRED_USE="georeplication? ( ${PYTHON_REQUIRED_USE} ) - glupy? ( ${PYTHON_REQUIRED_USE} ) ipv6? ( libtirpc )" # the tests must be run as root RESTRICT="test" # sys-apps/util-linux is required for libuuid -RDEPEND="bd-xlator? ( sys-fs/lvm2 ) - !elibc_glibc? ( sys-libs/argp-standalone ) +RDEPEND=" + acct-group/gluster + acct-user/gluster + dev-libs/libaio + dev-libs/userspace-rcu:= + net-libs/rpcsvc-proto + sys-apps/util-linux + sys-libs/readline:= emacs? ( >=app-editors/emacs-23.1:* ) fuse? ( >=sys-fs/fuse-2.7.0:0 ) georeplication? ( ${PYTHON_DEPS} ) infiniband? ( sys-fabric/libibverbs:* sys-fabric/librdmacm:* ) + xml? ( dev-libs/libxml2 ) + !elibc_glibc? ( sys-libs/argp-standalone ) libtirpc? ( net-libs/libtirpc:= ) !libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) ) - qemu-block? ( dev-libs/glib:2 ) - systemtap? ( dev-util/systemtap ) - tiering? ( dev-db/sqlite:3 ) - xml? ( dev-libs/libxml2 ) - sys-libs/readline:= - dev-libs/libaio !libressl? ( dev-libs/openssl:=[-bindist] ) libressl? ( dev-libs/libressl:= ) - dev-libs/userspace-rcu:= - net-libs/rpcsvc-proto - sys-apps/util-linux" -DEPEND="${RDEPEND} - virtual/acl - virtual/pkgconfig +" +DEPEND=" + ${RDEPEND} sys-devel/bison sys-devel/flex + virtual/acl test? ( >=dev-util/cmocka-1.0.1 app-benchmarks/dbench dev-vcs/git @@ -61,15 +60,14 @@ DEPEND="${RDEPEND} virtual/perl-Test-Harness dev-libs/yajl sys-fs/xfsprogs - sys-apps/attr )" + sys-apps/attr ) +" +BDEPEND=" + virtual/pkgconfig +" SITEFILE="50${PN}-mode-gentoo.el" -PATCHES=( - "${FILESDIR}/${PN}-3.12.2-poisoned-sysmacros.patch" - "${FILESDIR}/${PN}-4.1.0-silent_rules.patch" -) - DOCS=( AUTHORS ChangeLog NEWS README.md THANKS ) # Maintainer notes: @@ -78,13 +76,8 @@ DOCS=( AUTHORS ChangeLog NEWS README.md THANKS ) # glibc or if argp-standalone is installed. pkg_setup() { - python_setup "python2*" + python_setup "python3*" python-single-r1_pkg_setup - - # Needed for statedumps - # https://github.com/gluster/glusterfs/commit/0e50c4b3ea734456c14e2d7a578463999bd332c3 - enewgroup gluster - enewuser gluster -1 -1 "${EPREFIX}"/var/run/gluster gluster } src_prepare() { @@ -104,18 +97,12 @@ src_configure() { econf \ --disable-fusermount \ $(use_enable debug) \ - $(use_enable bd-xlator) \ - $(use_enable crypt-xlator) \ $(use_enable fuse fuse-client) \ $(use_enable georeplication) \ - $(use_enable glupy) \ $(use_enable infiniband ibverbs) \ - $(use_enable qemu-block) \ $(use_enable static-libs static) \ $(use_enable syslog) \ - $(use_enable systemtap) \ $(use_enable test cmocka) \ - $(use_enable tiering) \ $(use_enable xml xml-output) \ $(use libtirpc || echo --without-libtirpc) \ $(use ipv6 && echo --with-ipv6-default) \ @@ -184,9 +171,6 @@ src_install() { if ! use static-libs; then find "${D}" -type f -name '*.la' -delete || die fi - - # fix all shebang for python2 #560750 - python_fix_shebang "${ED}" } src_test() { diff --git a/sys-cluster/glusterfs/metadata.xml b/sys-cluster/glusterfs/metadata.xml index ce2361e3e3ea..cbd9d0546eb1 100644 --- a/sys-cluster/glusterfs/metadata.xml +++ b/sys-cluster/glusterfs/metadata.xml @@ -5,22 +5,21 @@ <email>cluster@gentoo.org</email> <name>Gentoo Cluster Project</name> </maintainer> + <maintainer type="person"> + <email>jaco@uls.co.za</email> + <name>Jaco Kroon</name> + <description>Please CC on bugs</description> + </maintainer> <longdescription lang="en"> GlusterFS is a cluster file-system capable of scaling to several peta-bytes. It aggregates various storage bricks over Infiniband RDMA or TCP/IP interconnect into one large parallel network file system. GlusterFS is based on a stackable user space design without compromising performance. </longdescription> <use> - <flag name="bd-xlator">Enable the blockdevice translator (requires <pkg>sys-fs/lvm2</pkg>)</flag> - <flag name="crypt-xlator">Enable the encryption translator</flag> <flag name="fuse">Add FUSE mount helper</flag> - <flag name="glupy">Enable support for translators written in Python</flag> <flag name="georeplication">Enable support for georeplication (requires <pkg>dev-lang/python</pkg>)</flag> <flag name="infiniband">Add support for Infiniband ibverbs transport. Libraries can be found in science overlay</flag> <flag name="ipv6">Use IPv6 by default, requires libtirpc</flag> <flag name="libtirpc">Build against <pkg>net-libs/libtirpc</pkg> for RPC support</flag> <flag name="rsyslog">Install configuration snippet for <pkg>app-admin/rsyslog</pkg></flag> - <flag name="qemu-block">Transparently create files as QCow2/QED images in the backend, including the possibility to snapshot.</flag> - <flag name="systemtap">Enable support for <pkg>dev-util/systemtap</pkg></flag> - <flag name="tiering">Enable support for data classification/tiering (requires <pkg>dev-db/sqlite</pkg> SLOT 3)</flag> </use> </pkgmetadata> |