summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Yao <ryao@gentoo.org>2013-03-23 23:48:13 +0000
committerRichard Yao <ryao@gentoo.org>2013-03-23 23:48:13 +0000
commit9935842969b793ff6eaa4d0e525c88eed3f94065 (patch)
tree7a0b440c90d36e7898e733544a71dce772964144 /sys-kernel
parentvanilla-3.8.4 + genpatches-3.8-5 + grsecurity-2.9.1-3.8.4-201303221826 (diff)
downloadhistorical-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/ChangeLog11
-rw-r--r--sys-kernel/spl/Manifest33
-rw-r--r--sys-kernel/spl/files/spl-0.6.0_rc14-no-cond_resched.patch38
-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.ebuild8
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() {