diff options
author | Richard Yao <ryao@gentoo.org> | 2013-03-23 23:48:13 +0000 |
---|---|---|
committer | Richard Yao <ryao@gentoo.org> | 2013-03-23 23:48:13 +0000 |
commit | 9935842969b793ff6eaa4d0e525c88eed3f94065 (patch) | |
tree | 7a0b440c90d36e7898e733544a71dce772964144 /sys-kernel | |
parent | vanilla-3.8.4 + genpatches-3.8-5 + grsecurity-2.9.1-3.8.4-201303221826 (diff) | |
download | historical-9935842969b793ff6eaa4d0e525c88eed3f94065.tar.gz historical-9935842969b793ff6eaa4d0e525c88eed3f94065.tar.bz2 historical-9935842969b793ff6eaa4d0e525c88eed3f94065.zip |
Free memory more quickly under memory pressure; do not dodoc INSTALL (deprecated upstream); fix /usr/src/spl symlink in 9999 ebuild (thanks likewhoa)
Package-Manager: portage-2.2.0_alpha169/cvs/Linux x86_64
Manifest-Sign-Key: 0xBEE84C64
Diffstat (limited to 'sys-kernel')
-rw-r--r-- | sys-kernel/spl/ChangeLog | 11 | ||||
-rw-r--r-- | sys-kernel/spl/Manifest | 33 | ||||
-rw-r--r-- | sys-kernel/spl/files/spl-0.6.0_rc14-no-cond_resched.patch | 38 | ||||
-rw-r--r-- | sys-kernel/spl/spl-0.6.0_rc14-r3.ebuild (renamed from sys-kernel/spl/spl-0.6.0_rc14-r2.ebuild) | 10 | ||||
-rw-r--r-- | sys-kernel/spl/spl-9999.ebuild | 8 |
5 files changed, 76 insertions, 24 deletions
diff --git a/sys-kernel/spl/ChangeLog b/sys-kernel/spl/ChangeLog index eafc85c22ed1..dc419f612977 100644 --- a/sys-kernel/spl/ChangeLog +++ b/sys-kernel/spl/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for sys-kernel/spl # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/spl/ChangeLog,v 1.49 2013/03/20 18:54:04 ryao Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/spl/ChangeLog,v 1.50 2013/03/23 23:48:08 ryao Exp $ + +*spl-0.6.0_rc14-r3 (23 Mar 2013) + + 23 Mar 2013; Richard Yao <ryao@gentoo.org> + +files/spl-0.6.0_rc14-no-cond_resched.patch, +spl-0.6.0_rc14-r3.ebuild, + -spl-0.6.0_rc14-r2.ebuild, spl-9999.ebuild: + Free memory more quickly under memory pressure; do not dodoc INSTALL + (deprecated upstream); fix /usr/src/spl symlink in 9999 ebuild (thanks + likewhoa) 20 Mar 2013; Richard Yao <ryao@gentoo.org> spl-9999.ebuild: Remove dodoc INSTALL from 9999 ebuild to reflect upstream change. diff --git a/sys-kernel/spl/Manifest b/sys-kernel/spl/Manifest index 4ecc56f7ef62..f8898f51c4bc 100644 --- a/sys-kernel/spl/Manifest +++ b/sys-kernel/spl/Manifest @@ -10,6 +10,7 @@ AUX spl-0.6.0_rc13-fix-soft-lockup.patch 6154 SHA256 85173dcdd261f6aebee9e040982 AUX spl-0.6.0_rc14-fix-atomic64-checks.patch 2327 SHA256 f3254d8c739ddd013ab99619e11263b5591058012cc9da0c066f60da7d3d52ad SHA512 90e2874904600ad191eb594b9ace2ab85c01943b1c5e190fc89b0b91e322aa30a4a32ecd8a407c14b9f1a103676c9956ce03ae5b7ebbd4ee7b962e86b7565245 WHIRLPOOL 59fb9f8544b1e7698e130985f3b95ad0ff419f8abffc705216f6236ac042b16a1bb7dafda586fed51d6fe2761b10e584f675a03b06a89ca503f6e92e9af87f58 AUX spl-0.6.0_rc14-fix-mutex-owner-check.patch 997 SHA256 7060f161cca637085f0f102a497e26246474bb7239506f7e66cd38b524c711ab SHA512 82b40b9cb92ec3be6b3d22865f807b1925cc273af4bbe798391ce59db044ff0a4b1db48a16c407eee9be48a7c5a92014cb3c2417c1c8783dc2339c3763b5ee44 WHIRLPOOL 3b6deb69e815695ed3fd4100dad27235646563269138cd1abe94084bdd7f5465789c1ee70ed2bc4a8ece5612342c86f57a148571d3b3de5d4a7472d67e8dd4a2 AUX spl-0.6.0_rc14-linux-3.9-compat.patch 6437 SHA256 830181596f6f1248f304185d6a9016439a09123a08c2d275c7a204ad7240648e SHA512 ea728aa00dfff1e0cf7a433547700a8a435a7eb5a0f3761ab9e133441ccc24aa867df952f00002aba4b587397722b04c015eae82a7e9b523253b09a0ff4cccce WHIRLPOOL 5cb867433c18ca6fb1d1a5a63ef5e875277af53135293b1032dca161488ca66063d5f3783a08e12efe7d4c10dc25970190ab0f29d18f4774db7dca273101576f +AUX spl-0.6.0_rc14-no-cond_resched.patch 1212 SHA256 d561310b6941104190c65dd8864250c3405338cb752e41d8220797c81d4a7ab2 SHA512 a68afca7da8948a73e00a774c226797451dfaf071be0fe0d18382681390640d680c49c2ee306a1c71b2b412b0766f7724cb9c14d9cbbd954ec77e4f37151e68a WHIRLPOOL 6928505289ef7a4324eede4d2de9464ad687cc3bb0767e164951a100927744817c243b058059f00934974ad4be10d38b8995ecb02a27785ca8e85627130765b8 AUX spl-0.6.0_rc9-alias-km-sleep-with-km-pushpage.patch 2071 SHA256 d34d56201046c6464141c50c815a956e200260c4b17a057af2dde6fdb5fcf949 SHA512 8decd4a803b85b46b5c241eeb0dd7b44e0491a972b08094d763a20d5ef21624ff0bbe79e56098600702f78f506e842c8bbfc3bc94067b86531399b0ba0b4285e WHIRLPOOL 5fbe166099b10e1281e5d824e25acd7f4467766d865e6c297dd8b503906b12bc63221babb0fb6e9fade65679a8637489cec16ac3e6e14d54457c9cda858db9db DIST spl-0.6.0-rc10.tar.gz 523189 SHA256 b25a748b18522f38b495f3577905ccd296f2782d1180140a05bd1efa19113ea0 SHA512 c5a01c9d42afcc3c4069b771fed2cbdc20d621994d2709a06057d93aeecc1b15c442cf5bce4cced90ecf7ac841f610e0b55b678e2bde8b853aeefac4402baf19 WHIRLPOOL 961edac42c35b1ecf65748eb2fc9876ed8cf1207307eedaba41a381e519589859ad5bbe468f7b94d563ec954e10c47237b4540f63a7ea211bbf9d92158f06b11 DIST spl-0.6.0-rc11.tar.gz 521190 SHA256 0f39edfb87c444781080e6f60acbd1094e3113cfc85a23d4e997fe0d53ce3a2f SHA512 d85dd2b10f98028ebc77069e63fd54241d7e8290cf81856cfb82648279e736ce108bc02b21993a87b8e8a046c3a3f37c0a3ede4cd32a4fa6be032316b47c5add WHIRLPOOL d49b863321173fa8effdaa338df4b8171e8db54f11b5f789a618ffa6abbdfcba721d2d38c59bac77786fb2d64096ed1e8f65a42f7ad2ab37a581d5e2493c05cb @@ -20,24 +21,24 @@ EBUILD spl-0.6.0_rc10.ebuild 2746 SHA256 92d76a7bf8be6356597221e8bd5c5dee2e0a967 EBUILD spl-0.6.0_rc11-r2.ebuild 2647 SHA256 77558d01484f4568f159c3be4b868c6440cdd7827498c272f3b35566be8bd71e SHA512 2b3d3a31cf2ecfcb95cc1a347c2cf99029138b784d96e91736549a607a37e0852e1de2100289c57049d71349555567846423c451ec8f371f2bc52c6d036b8bbd WHIRLPOOL 1b70e0eda287a57d1a0e91a3452bb7a9dd8f3fec67943d89c92c83168fdb3bec88d6ccb3681a7cedc473219f01d3097db03c2b722b4f59724423e13d5161eec6 EBUILD spl-0.6.0_rc12-r1.ebuild 2709 SHA256 bec0ff7d02fa56f0d641fbd0e16691c89abd81ab4dbaabbe2f44608a2bf5eb35 SHA512 b0748d36f6455b5154c77a0e4f916e5832718adb9a9dd92a0df80eac49105c635e776ddd1b9590b4a93c60ccb0458601d648462ccb98565a8c25e1874c156aa2 WHIRLPOOL 1126c0b938ef2b47fe5f822285d34ffa99f267e983e90ac013b03309ffc86bef6e3615e2a3d3ee4d2d9f24a073e202c9a3b5bbfc6151b1f09105ae479174449b EBUILD spl-0.6.0_rc13-r2.ebuild 2718 SHA256 28e3a08db5130f7878257d2b8b5ee1ffaab1d707fd3fdbfce504c79f192f952e SHA512 413a61ca08dc462f58705039625ffa107901f489eacb0c944750a53d47117008839a795c445ce24f8188eb2dd8a58dd21d681220c10b19c66e5d2a7dcc2c3348 WHIRLPOOL 08c17a3631206304b62eddabc6502c0d98f25cb8c5bc09417329e1d0168ab9dca8a5b294a0013e8cbf3e557d9ff2acdff691fac8863e5b30eccdbd504987e072 -EBUILD spl-0.6.0_rc14-r2.ebuild 2896 SHA256 99ae218e8a94c8502ccb8f5d768ef006d5dd4eeae8bf25179a827fd210c9f28e SHA512 3a9a548de077bfe5b4b134b7224dfed14abc2528ba4d6dbcac7ff07931c7c2cadb725fc2f512cab7b3cc1a653abf18ce6a289ab503ee0296eca10fa4485d2692 WHIRLPOOL 7b8becee1a6b65489bc5faf7d650fdc21c2d0d10bc9dc0ba29ba085a8ccd58956658012b839ab4838297ad55565b233c30657abb5ba4d9384aec1e3bcdeacbca -EBUILD spl-9999.ebuild 2880 SHA256 30a943cbe2ccd2114924c68830db9c5cc60a76e501cd6b2478fce833a60354fa SHA512 6ce8cb6b439f85fb0fe735ea6da19c8fa7312012e80f2c7db722b73d95b9173d216173c5386656062cc3af99370f622285002f4dc556f9800be6d2003e287326 WHIRLPOOL 120da13d59122e776320f4a5c0103ef12181f71309a164fd3458e71fdb0a28b2365f7365dff1f001d743bb93bc87c31a336f2640b877d660a51f46fb2d74cb96 -MISC ChangeLog 9463 SHA256 4f29d86481dbfdcf8697b54ae4724090cf4cfa4e7da895b2895eabb6683a52b1 SHA512 4ff712f52ddbc279f2ee37b24eb8143f1bc5b461ba19580ec59f9a2dc3af9bed65d9d80bcc5c4d8773fb9f344424091a4fd503fd839398ff5831feafff224789 WHIRLPOOL f60a54ec6295c09be608fe9241b0b3e6feae40a4c640575d176c87ba5f8680366c500e79d75ac9c40908affa6098e5094666a0b8fed99f6ce6e2a73804427126 +EBUILD spl-0.6.0_rc14-r3.ebuild 2991 SHA256 3b755a97de3143d8ce3347ca40564814aacd03ae228552fe458b716ad8b86fe1 SHA512 5799473298b5cc8f6cf9880bd738b35f61a5b6dccf9af673e31ff4dfbd8ad56eb07424f0ced3b954201b2e5b5c3a9461c249f8a1e6a62d024610b7e67dd18f89 WHIRLPOOL 563bbb2cbb3818eee5ff349d10e08f52a478e790bc37e7286728e51f3cab9f19591fd0135db8d9c506b09cd20fd2f63ffbf9b49cc18ec8274a786d4fcc2aab51 +EBUILD spl-9999.ebuild 2983 SHA256 4f5ed3b28daba66d91c75bc7f131572616ba929ab6cc96c63db01c8020975b5a SHA512 226662639e035313e6341ea46e317f28f3a4ccd6bf0b88329d38d3a31f59b15c818b9354c3d2fe52edc226da58d6dfddc8779d37dcc51d869e60c7309364695a WHIRLPOOL 5c067a078e16c14f52784c32bf8dc7586361b1bd592597c9bf7913f6ad62088a5da94c2025e6d2f430d2dc005ffa4344a630081b8c7df2116508cdee59eb97dc +MISC ChangeLog 9819 SHA256 d5c4c97486c34f2aba1015a55d2d17ccbc77d74dd83461cacfbb43f7ab281e20 SHA512 b96cb76732c4bfc0ac02349a8faba6c8f72da5f358e2a96193721ca0f9e6027588cb11556f1120f51faec67b9fb19bf34a1da533169d1b482162e6b2aca7bc72 WHIRLPOOL b7356dcdef40ed854cccc1ac31d3e653b4bcd227f6476e6e8496bd3ad14b20bd810cdd616151b131755ba26413a1842662ba4b120d762249f41ff1804ec7c400 MISC metadata.xml 305 SHA256 1379ed630ee72009790f82073e4777a26ca612e0c023825f4a2648266422672e SHA512 ec56bad42e58b3979698fe6607ca1854b018d2292f02f79f6cda070cfe1489b31d9738cfe886597edaca36dbe839a8d909c78f8e4c47b1764b1a0d586df75d33 WHIRLPOOL 11016324ed29ddb27d0c67488e24d15d8d34881a20d21d2807accad014feb4e5b29ceb8d72134f7d8c58d5f83b91c157290c51ea883a5f8007499e73d02acbcd -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) -iQIcBAEBCAAGBQJRSgW8AAoJECDuEZm+6ExkfY8P/3nY87ZYOP7yNEtdL8e0tBK3 -vWJ0/c5AppnG6zfK0xYct8N6q5mz4dIFX6byjSHzRlLuUAs9Lg3YP+1l6qimkdWs -VUipJL2/GNbjmnWDQFX8DnwLhOFX4L5HD6pOSiwoRcZFsSwyjYX0i4212QxQBzEE -2cdTKXxWB5gELJJj/GYaqbwFWQujpNaAMHb78z5NH6nZA9wR5Ln41bZJdFlpcV4e -0FSTLt8LPhXu00YttKyv8IWhVyuH0niZICQJYUHQ95Y9fV/Rm3y1uZL0yyXkVoDG -uZHc07+5hiIvnJ+/uzC+ZwEZMIr8CyX2EvFQYsgBKLC4BFmNUnPjgbET5fM8idYc -JcyhPkAuCpPmeMNZJuT9Z9DF8vaT3SL2s35HTZb05eR2A+l/NYB9rExvOtl+5yAC -HBD5PKKXfdyZdZ+/tssQAhMw+VdVxmszbpL2zAm6eZXn4vixZOLdoydI9IliUJPD -kPolKWA+juhCKR+wXswpt4FQ9AvIo9nc8gTeHBFJlqzKG+auCujESXOXu4mnKfnt -DcCNBL4meJRGfsUtPM+Xk7qET9WN7OG2wN1DmFNjkJUYV4zqQw7Juo83mlRyU1AC -v+gWhviChswTSFmPelVuprIgzcVWRaNp+Xl7VhgLeDMG8uHxCAxRv1yk4mxzTM9W -l1sPDShUOwRcmXX3gg7N -=21cM +iQIcBAEBCAAGBQJRTj8lAAoJECDuEZm+6ExkJm4QAKsNR6apJ5IkZAFNPvUZPt5j +YnujWD7AGWb0H5E+gReCO+UUhLK6riimm1AbBCxObQYw2WXfEkqKMnlqRB0d0iH0 +H7XMlTQ0ksopscFtLT6FjHyNpthRSrcCu8lWqY4kbpXM4+Zn5NWXmmnK9zLIEAg/ ++J97nnXKbMnhX4ojjFwsQqGuWQtWed2mO8nlmmrySv7TJvHlZtVpiVfm1EEoSeja +ithl4lhBKBXpPbyo91ixeiTn6DRRUD1EyN1wRq5CQmUsooYtdiV/7yRpsQGCA//1 +WiJLtKXTWUn/SvJB+ielHY3FTvJpHmp5+rGeyeWVIYNwcxbRB6VHuozMY8KKc7YX +i72167zpuF48/039fMGqibNv1LSjZiFsqpGm9h7myXfxtgxib4I1e3K7TZHmShyd +aK73Y9phyGCyO5LxhCh/mkyeaOmq70ICH3ecXba6YqTA9YdEhjKYYqpZu2NFhLh2 +q0aZ06QAPU76MkKy2vy3IGkG5AI5lOf5zmDdzJAr+T/oVxBOjM2Nj+Ti8pVHBiGn +T3Dd7u1nxcQA/tBo8keKfewkM8jVumcNqULmVRTxnSyQ1CXg5ax0m7AC8I9NptHA +kXfa4BQZsT1AR6x3KPll/TGz8pT8fjWaTg6HfaQJh1Zti0GZEotqpS3Z7GismY9y +iYGwcKjttUiDaLJdybsq +=pk0X -----END PGP SIGNATURE----- diff --git a/sys-kernel/spl/files/spl-0.6.0_rc14-no-cond_resched.patch b/sys-kernel/spl/files/spl-0.6.0_rc14-no-cond_resched.patch new file mode 100644 index 000000000000..9f1d692d0371 --- /dev/null +++ b/sys-kernel/spl/files/spl-0.6.0_rc14-no-cond_resched.patch @@ -0,0 +1,38 @@ +From 58a382c73ad3393d7591421950624e75d3c4aea1 Mon Sep 17 00:00:00 2001 +From: Richard Yao <ryao@cs.stonybrook.edu> +Date: Thu, 21 Mar 2013 13:21:11 -0400 +Subject: [PATCH] Do not call cond_resched() in spl_slab_reclaim() + +Calling cond_resched() after each object is freed and then after each +slab is freed can cause slabs of objects to live for excessive periods +of time following reclaimation. This interferes with the kernel's own +memory management when called from kswapd and can cause direct reclaim +to occur in response to memory pressure that should have been resolved. + +Signed-off-by: Richard Yao <ryao@cs.stonybrook.edu> +--- + module/spl/spl-kmem.c | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/module/spl/spl-kmem.c b/module/spl/spl-kmem.c +index f9c1114..a0ca2d2 100644 +--- a/module/spl/spl-kmem.c ++++ b/module/spl/spl-kmem.c +@@ -1112,14 +1112,11 @@ char *kvasprintf(gfp_t gfp, const char *fmt, va_list ap) + + if (skc->skc_flags & KMC_OFFSLAB) + kv_free(skc, sko->sko_addr, size); +- +- cond_resched(); + } + + list_for_each_entry_safe(sks, m, &sks_list, sks_list) { + ASSERT(sks->sks_magic == SKS_MAGIC); + kv_free(skc, sks, skc->skc_slab_size); +- cond_resched(); + } + + SEXIT; +-- +1.8.1.5 + diff --git a/sys-kernel/spl/spl-0.6.0_rc14-r2.ebuild b/sys-kernel/spl/spl-0.6.0_rc14-r3.ebuild index f6e9b030d58a..56165d9cbcd3 100644 --- a/sys-kernel/spl/spl-0.6.0_rc14-r2.ebuild +++ b/sys-kernel/spl/spl-0.6.0_rc14-r3.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/spl/spl-0.6.0_rc14-r2.ebuild,v 1.3 2013/03/16 18:05:53 ryao Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/spl/spl-0.6.0_rc14-r3.ebuild,v 1.1 2013/03/23 23:48:08 ryao Exp $ EAPI="4" AUTOTOOLS_AUTORECONF="1" @@ -9,7 +9,6 @@ inherit flag-o-matic linux-info linux-mod autotools-utils if [[ ${PV} == "9999" ]] ; then inherit git-2 - MY_PV=9999 EGIT_REPO_URI="git://github.com/zfsonlinux/${PN}.git" else inherit eutils versionator @@ -71,6 +70,9 @@ src_prepare() { # Linux 3.9 Support epatch "${FILESDIR}/${P}-linux-3.9-compat.patch" + + # Free memory under load quickly + epatch "${FILESDIR}/${P}-no-cond_resched.patch" fi # splat is unnecessary unless we are debugging @@ -98,10 +100,10 @@ src_configure() { src_install() { autotools-utils_src_install - dodoc AUTHORS DISCLAIMER INSTALL README.markdown + dodoc AUTHORS DISCLAIMER README.markdown # Provide /usr/src/spl symlink for lustre - dosym "spl-${MY_PV}/${KV_FULL}" /usr/src/spl + dosym "$(basename $(echo "${ED}/usr/src/spl-"*))/${KV_FULL}" /usr/src/spl } src_test() { diff --git a/sys-kernel/spl/spl-9999.ebuild b/sys-kernel/spl/spl-9999.ebuild index f37d2457c55b..2230fa05a75a 100644 --- a/sys-kernel/spl/spl-9999.ebuild +++ b/sys-kernel/spl/spl-9999.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/spl/spl-9999.ebuild,v 1.32 2013/03/20 18:54:04 ryao Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/spl/spl-9999.ebuild,v 1.33 2013/03/23 23:48:08 ryao Exp $ EAPI="4" AUTOTOOLS_AUTORECONF="1" @@ -9,7 +9,6 @@ inherit flag-o-matic linux-info linux-mod autotools-utils if [[ ${PV} == "9999" ]] ; then inherit git-2 - MY_PV=9999 EGIT_REPO_URI="git://github.com/zfsonlinux/${PN}.git" else inherit eutils versionator @@ -71,6 +70,9 @@ src_prepare() { # Linux 3.9 Support epatch "${FILESDIR}/${P}-linux-3.9-compat.patch" + + # Free memory under load quickly + epatch "${FILESDIR}/${P}-no-cond_resched.patch" fi # splat is unnecessary unless we are debugging @@ -101,7 +103,7 @@ src_install() { dodoc AUTHORS DISCLAIMER README.markdown # Provide /usr/src/spl symlink for lustre - dosym "spl-${MY_PV}/${KV_FULL}" /usr/src/spl + dosym "$(basename $(echo "${ED}/usr/src/spl-"*))/${KV_FULL}" /usr/src/spl } src_test() { |