summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Savchenko <bircoph@gmail.com>2012-08-30 17:07:58 +0400
committerAndrew Savchenko <bircoph@gmail.com>2012-08-30 17:07:58 +0400
commite027fb1aaff4292dee9258b52aee5511c0833d90 (patch)
tree7ebd25b71822d0d0c941338286b78f0db70bc061 /sys-cluster
parentoprofile: fix bug 428506 (diff)
downloadbircoph-e027fb1aaff4292dee9258b52aee5511c0833d90.tar.gz
bircoph-e027fb1aaff4292dee9258b52aee5511c0833d90.tar.bz2
bircoph-e027fb1aaff4292dee9258b52aee5511c0833d90.zip
orangefs: version bump to 2.8.6 with some updates
Diffstat (limited to 'sys-cluster')
-rw-r--r--sys-cluster/orangefs/ChangeLog8
-rw-r--r--sys-cluster/orangefs/Manifest37
-rw-r--r--sys-cluster/orangefs/files/orangefs-2.8.6-layout.patch123
-rw-r--r--sys-cluster/orangefs/metadata.xml1
-rw-r--r--sys-cluster/orangefs/orangefs-2.8.6.ebuild225
5 files changed, 377 insertions, 17 deletions
diff --git a/sys-cluster/orangefs/ChangeLog b/sys-cluster/orangefs/ChangeLog
index e0d8d0c..8377b1c 100644
--- a/sys-cluster/orangefs/ChangeLog
+++ b/sys-cluster/orangefs/ChangeLog
@@ -2,6 +2,14 @@
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+*orangefs-2.8.6 (30 Aug 2012)
+
+ 30 Aug 2012; Andrew Savchenko <bircoph@gmail.com> +orangefs-2.8.6.ebuild,
+ +files/orangefs-2.8.6-layout.patch, metadata.xml:
+ Update OrangeFS to 2.8.6. Most patches are upstream now.
+ Add support for reset-file-pos configure option. Block with
+ app-pda/orange due to liborange.so conflict for now.
+
31 May 2012; Andrew Savchenko <bircoph@gmail.com> files/README.Gentoo,
files/pvfs2-client-conf.d, files/pvfs2-client-init.d:
Add support for pvfs2fuse as pvfs2-client replacement.
diff --git a/sys-cluster/orangefs/Manifest b/sys-cluster/orangefs/Manifest
index cd38db6..0ea986f 100644
--- a/sys-cluster/orangefs/Manifest
+++ b/sys-cluster/orangefs/Manifest
@@ -1,17 +1,20 @@
-AUX README.Gentoo 4882 RMD160 94517e30633d90026273caab9052b09744799999 SHA1 dba6bc260b640b34457296dfb763eb80395aec50 SHA256 21f6f0ea8e6b48170c3a4e025b1967b5534cfdfaa82c132e9e16f7542e2fe8fa
-AUX orangefs-2.8.5-fuse-install.patch 311 RMD160 1f42e5f346364ea20ec4f9a773eb8d266cf7c9f6 SHA1 2bcba25d127fe4fdfd2d53159c7154a8f7e1c4f1 SHA256 6e74796eae966af102e2cf892ea311b18959e2c7903dfff583c795cd27df7230
-AUX orangefs-2.8.5-fuse-perms.patch 659 RMD160 57e5a8792a9d5a204f473133eebd6dbcbd1305e4 SHA1 865e50c28e43ae5e78f1cd5c45a04d1c6f09ce64 SHA256 b5b0101961be1beb68ff39342507043adef5b1144356bbcc87156dec83988551
-AUX orangefs-2.8.5-layout.patch 4186 RMD160 96402ca0e638af5259ff75a4b7f0db941a6bcb64 SHA1 28e2b26b6667eeaec0249296cb6060c53eca01b6 SHA256 3aefae1d569039dec50b283411d0caaea93022a9a3c925ac302ac4e983e375fe
-AUX orangefs-2.8.5-linux-3.1.patch 4010 RMD160 d1bc43dea030f5c0e181fcf00d60720b90325364 SHA1 78926a2aede1e3551a20e8febd1dacae54e7180a SHA256 3ae1dce462e4c453a7f35049360a89ce89f14732063a26fa3fd0f161654a51da
-AUX orangefs-2.8.5-linux-3.2.patch 6104 RMD160 e8198246b55c3ce99444454a5a3b8f123a2af9a3 SHA1 3eaa7265b3854a0f8ef212ce4b4364d9358d170b SHA256 c38a9eb4e60dd94e2dd91482c0dd8b0f36fce8e30586f75ffec08b55433104c1
-AUX orangefs-2.8.5-split-kernapps.patch 571 RMD160 566580e40c947076df93e8c97856fd96e8137244 SHA1 a2e26dc285eb75e89e30e1529aa87138f101b96b SHA256 fe66b4f82e13c19d11fe002a15f75f251af336055fae37cbb8c2ea57f795f7d8
-AUX orangefs-2.8.5-static-server.patch 625 RMD160 080883cd3507e8a63f3ffa3e5ae233046a4a0807 SHA1 7fc145d894b8d77406ec32fb6cf1b2dc94d5631d SHA256 69b0d94a9b17c3c9fa37644dc6d8649e4a254fbdb8da7e13e0b094f35928874b
-AUX orangefs-2.8.5-vis.patch 2410 RMD160 944700e3f763b28b055223683392f7b6e04a7e9b SHA1 1545da7d05ac59708616e39786a88d84764e71d4 SHA256 88c139a3eb35832860911c2580af8e1bb699437a399549d4dfb39f882af98520
-AUX pvfs2-client-conf.d 2204 RMD160 9b27d263859aadd267db4a1afb34477053e2e192 SHA1 6bb52f66c4f460fc28c6dd69cc257c68ba352026 SHA256 c12b1be67e02d011b3c234283ffd3d9b85b8a7d7a2e0644487c4cfc8c3a8536e
-AUX pvfs2-client-init.d 6617 RMD160 ad558862bd27d732791d3c05033634fd5180e768 SHA1 182bdb03887a64d0defb34a7573aa8d607728d7c SHA256 d4042e6ed227f7488f7026da0693098f7eaf01e3d69d15a06d800936e26d18b5
-AUX pvfs2-server-conf.d 846 RMD160 43f3c266799e0da13cba5805dad6f982c466c6d4 SHA1 f42d664ec836f9e44b0fc37419f083155b129b5e SHA256 ee0a05a593e4d78b867aa7ef008dbd553c02bb97c2bfec7865173b46c45f30d0
-AUX pvfs2-server-init.d 4484 RMD160 9b09a8b5f5eeb051adbe3aa332a66e01f131008f SHA1 2709c50dc4fccbf31e4ab9ba106525713eb04a97 SHA256 644dbe0e7a276e383a79c9ce2fea1a3cd69bedd96232559fae9526d42a38af2e
-DIST orangefs-2.8.5.tar.gz 10163182 RMD160 2dd6cefac431575b3cdc5ae6ebcba216c33df453 SHA1 8430f9895c0988b4175b7a913914d7bb31dd80fa SHA256 00dd5bf1fea76573e0203aaad206dfe4ef087cdbfcfda1e7fd0969dafd16a0d3
-EBUILD orangefs-2.8.5-r1.ebuild 7496 RMD160 19cf959b825242d4410d0d03f670d9822bcd2139 SHA1 daacec7b0be72b0428ff5ec427a441f95bc0786f SHA256 fd21bf129cd2e0a9a3c04826724c2e87234d78736e2db6acebb290398d5fbfdc
-MISC ChangeLog 5925 RMD160 77506fa729597b3779ff8a7c9d43d46f33ef7799 SHA1 a00a9fae3cc3cf821ba1d931997c8f9c2004a97d SHA256 aecf39d4c1b2cd14e38106118a204c26328079a03cfcd4ff7e407f28cdd572bf
-MISC metadata.xml 1498 RMD160 8b918e5343d0970f5f197f1dc75f3128b30d2bd1 SHA1 1cbeac369493d8b9b1a6513e1d216a834a1b8407 SHA256 ac7d4db73e01285044a9e530e9748b261203b275b7cf5c4c428af748f80c2c2d
+AUX README.Gentoo 4882 SHA256 21f6f0ea8e6b48170c3a4e025b1967b5534cfdfaa82c132e9e16f7542e2fe8fa SHA512 2b5bd3baab4ce341b4f6ae599afd48ac7beaade353bfc5661563d428c267446db152f334070e1da97fa139b6b08f4db37fbfefd71b6e5c069183ac0609a648a5 WHIRLPOOL db9f691404f95574f92ed2d87a079e6e54e39ee73609c5b7c51da47ab9af18721fb9f2aa4f7e7327412c71b4db4bd018f3e48115cce49739bd5f56fc159fa202
+AUX orangefs-2.8.5-fuse-install.patch 311 SHA256 6e74796eae966af102e2cf892ea311b18959e2c7903dfff583c795cd27df7230 SHA512 7674fbc8309ce5ea0aa840470567bf616acef3e45f90751fbd680e48ef7afaa5405df6a09bac8960e80b5b6bf28dc3ba24b9bd8a72a88713777b2905000aa941 WHIRLPOOL 9212a651df3617fb375b6989f6e6984eb6eb2583690cf39287df0fb420798392160db0daa37be78a846e7b75bcd5103fe89208be50422b493e2b0dfee8d80b26
+AUX orangefs-2.8.5-fuse-perms.patch 659 SHA256 b5b0101961be1beb68ff39342507043adef5b1144356bbcc87156dec83988551 SHA512 c4beb06c15157cffbaa581a116c1c9e85495a417917f546a3ef4ddb4c83c6b785fcb24eba93670b600b7478e3413416ef1bba426234d2069919e909384250d9f WHIRLPOOL 3105391eafb87c7e5a173e756c292bb4b2e8bbfeee72a57ad668b5595af947ea63ca3df259b5398dce8d742dd7a175ad16e267396af686a2c5025d3155703d50
+AUX orangefs-2.8.5-layout.patch 4186 SHA256 3aefae1d569039dec50b283411d0caaea93022a9a3c925ac302ac4e983e375fe SHA512 09c8d8524c389ec3a04531e1d98495feba3241c7b74a10abee8ec50e24bc74dc2ac35afc56b524f79a71ce1e629d6adf73b9303f41b20d143330ebc1d4fe0f8f WHIRLPOOL 375c3b8103a1e7e8a9b426b28875aae6cd44bee13fb363323d0a4552a367a8342e583396e2a748ce70c728ab0a622b06fa2a50dc18537a52b52b192958fb3998
+AUX orangefs-2.8.5-linux-3.1.patch 4010 SHA256 3ae1dce462e4c453a7f35049360a89ce89f14732063a26fa3fd0f161654a51da SHA512 fa22201ca162ff52b455173894c9d7389917f19262d873bf34e368f3e12c60b6a522c42a6b289ec878a15175399065076e69952cc0daeb19939b4753c4e2ca29 WHIRLPOOL 4b034eb3b5fa59dd6b4d5a53c9236d339b3c8315b0d1b3d09c9228656df16cce968caba40f90607d2711700402dea6a6c241e997fd77aed28735ae56841de15e
+AUX orangefs-2.8.5-linux-3.2.patch 6104 SHA256 c38a9eb4e60dd94e2dd91482c0dd8b0f36fce8e30586f75ffec08b55433104c1 SHA512 89eda8163c6016f5922870b3b287d85f79ea48f8075670ecc9e1ff38fab8a22013bec77450eb3d17bd9a7d18784f250a9403f62e0e33b5fdd6ed3a1f9e1dd347 WHIRLPOOL e88d8891aab881954e0931ce856e755f2d2c335bc83b5a9d550e0aafb18999003c559fcecda2984b30851e37c03ce5a932aaa8a205da82b60cdb23838ac2228f
+AUX orangefs-2.8.5-split-kernapps.patch 571 SHA256 fe66b4f82e13c19d11fe002a15f75f251af336055fae37cbb8c2ea57f795f7d8 SHA512 0d74b2738377ab87469f5d17ba49bd364d64940e5c8ea7081ad7eb34d9ca95c48b8a8cb4ffcd294584b665d499e213e63e3055e5dd602a69ae551ef8b5fe80e1 WHIRLPOOL 779e1e79df459142a3bd2ab1d02ac9c1cf90d149cf6f3a0dd771022d2dfc1b199358f045d332efb733fae2e34df1b4bd5c93b1a9422e2a3a118f70b549ebf9b8
+AUX orangefs-2.8.5-static-server.patch 625 SHA256 69b0d94a9b17c3c9fa37644dc6d8649e4a254fbdb8da7e13e0b094f35928874b SHA512 71dc84fe6e2a99a446e086d58e4ee1b045adfa053c811c9410bce704ef0041fb9ccc0974e9453f4fcc7a172765aefde26a35184db3217ab801a75a82dca9f973 WHIRLPOOL 99a16f8eeb17c926cac4ab51605aeedc6a3461c37a58833a6dfd8f82a1fb3693e1fc794a3b933154e85b80f6ffffb9a17ba0b5a09b0e262025e79def4784d768
+AUX orangefs-2.8.5-vis.patch 2410 SHA256 88c139a3eb35832860911c2580af8e1bb699437a399549d4dfb39f882af98520 SHA512 1be2d7ee50d83cec4ae342279638988866f43340a117763efd20cc402c9caf963b47194c94b41c08dc8049dbb61dc669efd07bcbf26d0e1c4dbeca961d77cf8d WHIRLPOOL 3564092b6aaaa9fceb23eb13c9bead7e04698fb8ba5821ae71c012eb7c2f4f30e878bad7bc2ea5c0c3fd53ae86ffc860ed114b826176af41f55ec8bc741c33d7
+AUX orangefs-2.8.6-layout.patch 4407 SHA256 5bb0646fa483fc4eb51ae71d3a1fc9e3cc43e0b1a525e8fd3939c6eddf2561a1 SHA512 8d8d463bc302382d612dc9515adf3ece4523f7f1039338a57a6f1dc3f35490c441031dd2539d4a3f80e4f4c0b4ea5ee2354e26a7942f156aa8fe59d6a2617630 WHIRLPOOL 1473407bd68a32b3a50499fa9abea4ef394cf5ed38b4a39a45e4b45d4ca0233f725b8d2fac816901044b51085753c818d70066f14b47402945dfc030178174ed
+AUX pvfs2-client-conf.d 2204 SHA256 c12b1be67e02d011b3c234283ffd3d9b85b8a7d7a2e0644487c4cfc8c3a8536e SHA512 d3e2f2cf4e4072171c39b77117b58346333a8d9501f40aea7a49c001330ef1b1b78da0375deaa6aa94b7d31c4450a6699fe624c7093736bfa94ff98ef6390399 WHIRLPOOL 986cde79995604a818da72508be7dd802bfdc0e27c92d2886ecb64683fdc7eb903068368c7f04149a1ec97db7d59a037fa545a7a5c9cc6d921e23500e851235c
+AUX pvfs2-client-init.d 6617 SHA256 d4042e6ed227f7488f7026da0693098f7eaf01e3d69d15a06d800936e26d18b5 SHA512 0174268be306b2c2313ddbf14a9e541a6613b884abb0933b0955a050c9e22b8d6ea68e6b89d2ba6be4955612bcf03a728d6c81e2f7ec732750189b97e440a9a7 WHIRLPOOL 337718b218a8313726f031473f66d2cf0378fff89e5da099204a809647eb85445dfa1e51bcc87e447d4e3c2e1bc4005f18ed00a38b9e683576738f17d1434692
+AUX pvfs2-server-conf.d 846 SHA256 ee0a05a593e4d78b867aa7ef008dbd553c02bb97c2bfec7865173b46c45f30d0 SHA512 25d6c1c1ca0c5c72fcb28ed30c9ffd9c833736b660d9022569ef9f224352f2e8bff1b761acc27b2bbad5b7f7a92e6172cedea9d9f543d436d53351559199f706 WHIRLPOOL ed1f45a1e563e966a0d07ae22a65c00b954089b4ad20b22364c5c6dd017c188b0e28406fcd62fe9baad0f255010360a8a14aa1450f172116d7232b162073b3c8
+AUX pvfs2-server-init.d 4484 SHA256 644dbe0e7a276e383a79c9ce2fea1a3cd69bedd96232559fae9526d42a38af2e SHA512 2b151e3db540a551b42d09091f786f9795abbfa0d00d56c9683e7f1426d96f0b079df02f93a8e3cb9bb3fe4fdc2bbb8cf90e75fe7d1b342e5fea2a2c5d67997f WHIRLPOOL aa997fae27cc3f838ea84e9016ac1be7a49f049ceba521d952c440531d5fcc4b6f8812f2e0ed7ba30d353ec94148c648e90c6edb74ddb92648f7e09ce4dc6665
+DIST orangefs-2.8.5.tar.gz 10163182 SHA256 00dd5bf1fea76573e0203aaad206dfe4ef087cdbfcfda1e7fd0969dafd16a0d3 SHA512 8a71d192130db022a862402bd57b3769b221e423b3d7e321d7fe9c2ec192718365455d25cee1be23d2ea8ae861ec84f02e9cf192ea3734a388fbabc111eeef8f WHIRLPOOL d6cfbaae8c9277f0973eb7a284b0b56c7494f33b292d1f34d05e77cabc29b20da0d200d518180781cdeb7b986a1f323159b38974de50391ed670dd27d34aaa8f
+DIST orangefs-2.8.6.tar.gz 2778466 SHA256 cc2a9df9750abe6ea97c9e6259083a45d22d8cbf56bc4a8c35376940ba8108f8 SHA512 0eb22b217fdfc4bd1384551bbe4c946223eba09db1dae361204cc3624abc0c681a1b99265f7b2c01034fbdcb3d52a5366f43e941639ef7ee5c2ce0bccc140697 WHIRLPOOL f8ac9dccc0bd7f76978173f501e58ed92d75d280198e1426bdd3fa8953821c9dc47dbd088ea5d5b546bee7c330e8e3edb55d2829ee61e04980e58cbd8122fdc5
+EBUILD orangefs-2.8.5-r1.ebuild 7496 SHA256 fd21bf129cd2e0a9a3c04826724c2e87234d78736e2db6acebb290398d5fbfdc SHA512 c12e251cdae702e2064b767b88355d51ac171ad573e9e2afae62e2ef48abbaa51d882bf2342ed5b8bb14d436d57e453a9b9c5cd38b53724a671c4237205622b1 WHIRLPOOL 4ea24fd0964117ac3b68420697232c2003008f4eea942f4ffe372f12f3ac8f489b464ffc811eb7e8bfa1e3abe5e5d6f2d0cfad03067df680a52ca16c28d31b50
+EBUILD orangefs-2.8.6.ebuild 6879 SHA256 d8a5b991ca70c95147754ad00b816018623ff5570eadb94f18188c71a0cdcacb SHA512 f01c3ed09875eb052f58972da185768a394a34cea7688d68db5905954e1473945b1981eb644271c747173a7c5850dc059dea83de8af5e7ff4ccaacf9fbc7e860 WHIRLPOOL ebe2fc0440237b0789924244b4d5320077feeb171d7dd47ede1f63bf8bdeb79bf53ee7c13f371c02c17dacdd123d8c38617f380e98b8c016450a468d98a1426a
+MISC ChangeLog 6261 SHA256 67c6d94a055fba4b76dcb95094b2eb6ff4d917b12a37b1322c8c9f3b5c6fa39a SHA512 5acb7dc7b6c135e844ba7a1f258e6850a5b0b443a9d05b521b640da8b8fed4f9fd27eccb82f3e3994e53e1c2dcd9832b2682ed9ebbf32e1ef9bc7e021af79b60 WHIRLPOOL 3706f5fd4032899fde062673b325e72a768343e6df197f449418a6c32bd0b3580a0e90f8408c7c385d8ccc15d396a9499dbc2155325ba2e325d1da7c2b3ab387
+MISC metadata.xml 1636 SHA256 e471df95801404fbfa1b2bbda973b18868a839f7148879911b093f32e8e24756 SHA512 68475f3c406de29f2c852a0dd311abee9ec9ad0e3b53c01590fc8e122cb96e92a99b2b3c0c939c16abeeb6999676386be83981b66fae528ad49c8486871a9e4f WHIRLPOOL 332ae4d82dfa20f262fed28606fe4f6b2253fef336f5c8e84b279031b60ff9fa05b26bc6e6d797de6d80726735f9a3a98b7dabf809303c7495902e9c6d9f7323
diff --git a/sys-cluster/orangefs/files/orangefs-2.8.6-layout.patch b/sys-cluster/orangefs/files/orangefs-2.8.6-layout.patch
new file mode 100644
index 0000000..066ed58
--- /dev/null
+++ b/sys-cluster/orangefs/files/orangefs-2.8.6-layout.patch
@@ -0,0 +1,123 @@
+diff -Naur orangefs-2.8.6.p1/src/client/sysint/sys-create.sm orangefs-2.8.6/src/client/sysint/sys-create.sm
+--- orangefs-2.8.6.p1/src/client/sysint/sys-create.sm 2012-04-14 00:23:05.000000000 +0400
++++ orangefs-2.8.6/src/client/sysint/sys-create.sm 2012-08-30 14:34:24.129659209 +0400
+@@ -144,6 +144,8 @@
+ PVFS_error ret = -PVFS_EINVAL;
+ PINT_smcb *smcb = NULL;
+ PINT_client_sm *sm_p = NULL;
++ struct server_configuration_s *server_config = NULL;
++ enum PVFS_sys_layout_algorithm layout_algo = PVFS_SYS_LAYOUT_ROUND_ROBIN;
+
+ gossip_debug(GOSSIP_CLIENT_DEBUG, "PVFS_isys_create entered\n");
+
+@@ -244,7 +246,17 @@
+ }
+ else
+ {
+- sm_p->u.create.layout.algorithm = PVFS_SYS_LAYOUT_ROUND_ROBIN;
++ sm_p->object_ref = parent_ref;
++ /* get default filesystem layout */
++ server_config = PINT_get_server_config_struct(sm_p->parent_ref.fs_id);
++ if (server_config)
++ {
++ layout_algo = server_config->default_layout_algo;
++ /* Release the server config mutex */
++ PINT_put_server_config_struct(server_config);
++ }
++
++ sm_p->u.create.layout.algorithm = layout_algo;
+ }
+
+ sm_p->object_ref = parent_ref;
+diff -Naur orangefs-2.8.6.p1/src/common/misc/server-config.c orangefs-2.8.6/src/common/misc/server-config.c
+--- orangefs-2.8.6.p1/src/common/misc/server-config.c 2012-06-12 13:08:33.000000000 +0400
++++ orangefs-2.8.6/src/common/misc/server-config.c 2012-08-30 14:47:21.951009424 +0400
+@@ -125,6 +125,7 @@
+ static DOTCONF_CB(directio_thread_num);
+ static DOTCONF_CB(directio_ops_per_queue);
+ static DOTCONF_CB(directio_timeout);
++static DOTCONF_CB(get_default_layout_algo);
+ static DOTCONF_CB(tree_width);
+ static DOTCONF_CB(tree_threshhold);
+
+@@ -1028,6 +1029,29 @@
+ {"TreeThreshhold", ARG_INT, tree_threshhold, NULL,
+ CTX_FILESYSTEM, "2"},
+
++ /* Specifies the default data layout for a filesystem.
++ * Supported values are:
++ *
++ * none - PVFS_SYS_LAYOUT_NONE:
++ * servers are selected in the order listed in the configuration
++ * starting with the first one;
++ *
++ * random - PVFS_SYS_LAYOUT_RANDOM:
++ * servers are selected in random order but no server is used twice;
++ *
++ * round-robin - PVFS_SYS_LAYOUT_ROUND_ROBIN (default):
++ * servers are selected in the order listed in the configuration
++ * starting with a random one;
++ *
++ * local - PVFS_SYS_LAYOUT_LOCAL:
++ * puts a file on the server on the same node as the client, if there
++ * is one. Otherwise defaults to round_robin;
++ *
++ * PVFS_SYS_LAYOUT_LIST is currently not supported as a default value;
++ * */
++ {"LayoutAlgo", ARG_STR, get_default_layout_algo, NULL,
++ CTX_DEFAULTS, "round-robin"},
++
+ LAST_OPTION
+ };
+
+@@ -3072,6 +3096,37 @@
+ return NULL;
+ }
+
++DOTCONF_CB(get_default_layout_algo)
++{
++ struct server_configuration_s *config_s =
++ (struct server_configuration_s *)cmd->context;
++
++ enum PVFS_sys_layout_algorithm *algo = &config_s->default_layout_algo;
++
++ if(!strcmp(cmd->data.str, "round-robin"))
++ {
++ *algo = PVFS_SYS_LAYOUT_ROUND_ROBIN;
++ }
++ else if(!strcmp(cmd->data.str, "random"))
++ {
++ *algo = PVFS_SYS_LAYOUT_RANDOM;
++ }
++ else if(!strcmp(cmd->data.str, "local"))
++ {
++ *algo = PVFS_SYS_LAYOUT_LOCAL;
++ }
++ else if(!strcmp(cmd->data.str, "none"))
++ {
++ *algo = PVFS_SYS_LAYOUT_NONE;
++ }
++ else
++ {
++ return "Error unknown LayoutAlgo option, valid values are:\n"
++ "local, none, random, round-robin\n";
++ }
++ return NULL;
++}
++
+ /*
+ * Function: PINT_config_release
+ *
+diff -Naur orangefs-2.8.6.p1/src/common/misc/server-config.h orangefs-2.8.6/src/common/misc/server-config.h
+--- orangefs-2.8.6.p1/src/common/misc/server-config.h 2012-04-19 18:01:24.000000000 +0400
++++ orangefs-2.8.6/src/common/misc/server-config.h 2012-08-30 14:47:40.867360874 +0400
+@@ -201,6 +201,9 @@
+ * be configurable.
+ */
+ int trove_method;
++
++ enum PVFS_sys_layout_algorithm default_layout_algo; /* Default data layout algorithm:
++ local, none, random, round-robin (default) */
+ void *private_data;
+ int32_t tree_width;
+ int32_t tree_threshhold;
diff --git a/sys-cluster/orangefs/metadata.xml b/sys-cluster/orangefs/metadata.xml
index c543daf..775a33e 100644
--- a/sys-cluster/orangefs/metadata.xml
+++ b/sys-cluster/orangefs/metadata.xml
@@ -18,6 +18,7 @@
<flag name='kmod-threads'>Use experimental threads support for kernel helper code</flag>
<flag name='memtrace'>Use mtrace for memory debugging (must set MALLOC_TRACE to output file)</flag>
<flag name='open-mx'>Add support for Myrinet Express over Ethernet</flag>
+ <flag name='reset-file-pos'>Resets file position pointer in kernel interface upon error. See ChangeLog for 2.8.6 for more details</flag>
<flag name='secure'>Enable connects only from trusted hosts/ports</flag>
<flag name='sendfile'>Enable kernel sendfile support (recommended for serving of large files only)</flag>
<flag name='server'>Enable compilation of server code</flag>
diff --git a/sys-cluster/orangefs/orangefs-2.8.6.ebuild b/sys-cluster/orangefs/orangefs-2.8.6.ebuild
new file mode 100644
index 0000000..9aa43c7
--- /dev/null
+++ b/sys-cluster/orangefs/orangefs-2.8.6.ebuild
@@ -0,0 +1,225 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/pvfs2/Attic/pvfs2-2.7.1-r1.ebuild,v 1.3 2011/07/15 13:57:08 xarthisius dead $
+
+EAPI=4
+inherit autotools linux-info linux-mod toolchain-funcs
+
+DESCRIPTION="OrangeFS is a branch of PVFS2 cluster filesystem"
+HOMEPAGE="http://www.orangefs.org/"
+SRC_URI="http://orangefs.org/downloads/${PV}/source/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+aio apidocs debug doc examples fuse gtk infiniband kmod-threads memtrace
++mmap +modules open-mx reset-file-pos secure sendfile +server ssl static
+static-libs +tcp +threads valgrind"
+
+CDEPEND="
+ dev-lang/perl
+ >=sys-libs/db-4.8.30
+ virtual/perl-Math-BigInt
+ fuse? ( sys-fs/fuse )
+ gtk? ( x11-libs/gtk+:2 )
+ infiniband? ( sys-infiniband/ofed )
+ open-mx? ( sys-cluster/open-mx[static-libs?] )
+ ssl? ( dev-libs/openssl[static-libs?] )
+ valgrind? ( dev-util/valgrind )
+"
+RDEPEND="${CDEPEND}
+ !app-pda/orange
+ modules? ( virtual/modutils )
+"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+ >=sys-devel/autoconf-2.59
+ sys-devel/bison
+ sys-devel/flex
+ apidocs? ( app-doc/doxygen )
+ doc? ( dev-tex/latex2html )
+ modules? ( virtual/linux-sources )
+"
+
+# aio and sendfile are only meaningful for kernel module;
+# apidocs needs docs to be build first;
+# kernel threads obviously needs kernel module and threads
+# memtrace and valgrind witout debug info will be a pain;
+# if both Myrinet and TCP interfaces are enabled in BMI, 5 sec delays will
+# occur, though, at lest one of them must be enabled;
+# static flag affects only server, so it must depend on it;
+REQUIRED_USE="
+ aio? ( modules )
+ apidocs? ( doc )
+ sendfile? ( modules )
+ kmod-threads? ( modules threads )
+ memtrace? ( debug )
+ static? ( server static-libs )
+ tcp? ( !infiniband !open-mx )
+ valgrind? ( debug )
+ || ( infiniband open-mx tcp )
+"
+
+BUILD_TARGETS="just_kmod"
+MODULE_NAMES="pvfs2(fs::src/kernel/linux-2.6)"
+
+pkg_setup() {
+ linux-mod_pkg_setup
+ if use modules && kernel_is -ge 3 3; then
+ eerror "Sorry, linux kernels >= 3.3 are not support yet."
+ eerror "You may disable modules use flag and use fuse client to mount filesystem."
+ eerror "PVFS2 server and ROMIO I/O API are still available too."
+ return 1
+ fi
+}
+
+src_prepare() {
+ # Upstream doesn't seem to want to apply this which makes
+ # sense as it probably only matters to us. Simple patch
+ # to split the installation of the module (which we use
+ # the eclass for) and the installation of the kernapps.
+ epatch "${FILESDIR}"/${PN}-2.8.5-split-kernapps.patch
+
+ # Allow data layout control (proposed by upstream)
+ epatch "${FILESDIR}"/${P}-layout.patch
+
+ # Change defalt server logfile location to more appropriate value
+ # used by init script.
+ sed -i "s%/tmp/pvfs2-server.log%/var/log/pvfs2/server.log%g" \
+ src/apps/admin/pvfs2-genconfig || die "sed on pvfs2-genconfig failed"
+
+ AT_M4DIR=./maint/config eautoreconf
+}
+
+src_configure() {
+ # VIS build is broken at this moment.
+ # Please add SDL dependency on reenable.
+
+ local myconf=""
+
+ use threads && use aio || myconf+=" --disable-aio-threaded-callbacks"
+
+ # fast mode disables optimizations
+ use debug && myconf+=" --disable-fast --with-berkdb-debug" \
+ || myconf+=" --enable-fast --without-berkdb-debug"
+
+ use modules && myconf+=" --with-kernel=${KV_DIR}"
+
+ # ARCH is used to define linux header path, should be not set.
+ unset ARCH
+ econf \
+ --disable-nptl-workaround \
+ --disable-redhat24 \
+ --enable-epoll \
+ --enable-shared \
+ --enable-verbose-build \
+ --sysconfdir="${EPREFIX}"/etc/pvfs2 \
+ $(use_enable aio kernel-aio) \
+ $(use_enable debug perf-counters) \
+ $(use_enable debug segv-backtrace) \
+ $(use_enable fuse) \
+ $(use_enable gtk karma) \
+ $(use_enable mmap mmap-racache) \
+ $(use_enable kmod-threads threaded-kmod-helper) \
+ $(use_enable reset-file-pos) \
+ $(use_enable secure trusted-connections) \
+ $(use_enable sendfile kernel-sendfile) \
+ $(use_enable server) \
+ $(use_enable static static-server) \
+ $(use_enable static-libs static) \
+ $(use_with infiniband openib "${EPREFIX}"/usr/) \
+ $(use_with memtrace mtrace) \
+ $(use_with open-mx mx "${EPREFIX}"/usr/) \
+ $(use_with ssl openssl "${EPREFIX}"/usr/) \
+ $(use_with tcp bmi-tcp) \
+ $(use_with valgrind) \
+ ${myconf}
+}
+
+src_compile() {
+ emake all
+ if use modules; then
+ linux-mod_src_compile || die "kernel module compilation failed"
+ emake kernapps
+ fi
+
+ use doc && emake docs
+ if use apidocs; then
+ cd "${S}"/doc
+ doxygen doxygen/pvfs2-doxygen.conf || die "doxygen failed"
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ if use modules; then
+ linux-mod_src_install || die
+ emake DESTDIR="${D}" kernapps_install
+
+ newinitd "${FILESDIR}"/pvfs2-client-init.d pvfs2-client
+ newconfd "${FILESDIR}"/pvfs2-client-conf.d pvfs2-client
+ fi
+
+ if use server; then
+ newinitd "${FILESDIR}"/pvfs2-server-init.d pvfs2-server
+ newconfd "${FILESDIR}"/pvfs2-server-conf.d pvfs2-server
+ fi
+
+ keepdir /var/log/pvfs2
+
+ dodoc AUTHORS CREDITS ChangeLog INSTALL README "${FILESDIR}/README.Gentoo"
+
+ if use doc; then
+ dodoc doc/{coding/,}*.{pdf,txt} doc/random/*.pdf \
+ doc/{coding/valgrind,add-client-syscall,add-server-req,REFERENCES.bib}
+
+ if use apidocs; then
+ dohtml -A map -A md5 doc/doxygen/html/*
+ fi
+
+ docinto design
+ dodoc doc/design/*.{pdf,txt}
+ fi
+ if use examples; then
+ docinto examples
+ dodoc -r examples/heartbeat examples/fs.conf
+ fi
+}
+
+pkg_postinst() {
+ linux-mod_pkg_postinst || die
+
+ ewarn "Plese read ${ROOT}usr/share/doc/${PF}/README.Gentoo documentation carefully!"
+ ewarn "It contains very important usage information and known issues."
+ if ! use modules; then
+ ewarn
+ ewarn "Without modules support you wouldn't be able to use pvfs2-client and mount"
+ ewarn "partitions using kernel VFS. Though, you are still able to use libpvfs2,"
+ ewarn "ROMIO interface, and FUSE client (if fuse use flag is enabled)."
+ fi
+ if use modules && kernel_is -ge 3 1; then
+ ewarn
+ ewarn "ACL support for 3.1 and 3.2 kernels is known to have bugs."
+ fi
+ if use sendfile; then
+ ewarn
+ ewarn "With sendfile enabled performance will be degraded for small access patterns."
+ fi
+}
+
+pkg_config() {
+ local s
+ local f="$(source "${ROOT}"etc/conf.d/pvfs2-server; echo ${PVFS2_FS_CONF})"
+ [[ -z "${f}" ]] && f="${ROOT}etc/pvfs2/fs.conf"
+ if [[ -f "${f}" ]]; then
+ ewarn "Previous install detected."
+ ewarn "We're about to wipe out ${f} and replace it with"
+ ewarn "the file generated by running pvfs2-genconfig. If this is what"
+ ewarn "you want to do, hit any key to continue. Otherwise hit ctrl+C"
+ ewarn "to abort."
+ read s
+ fi
+ einfo "Creating unified configuration file"
+ [ ! -d "${ROOT}$(dirname "${f}")" ] && mkdir -p "${ROOT}$(dirname "${f}")"
+ "${ROOT}"usr/bin/pvfs2-genconfig "${f}"
+}