From: "William Hubbs" <williamh@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/openrc:master commit in: sh/
Date: Thu, 11 Sep 2014 19:06:33 +0000 (UTC) [thread overview]
Message-ID: <1410460018.50658449bd46f1a53b8eb11d34f6eefdd1ceba9c.williamh@OpenRC> (raw)
commit: 50658449bd46f1a53b8eb11d34f6eefdd1ceba9c
Author: Roy Marples <roy <AT> marples <DOT> name>
AuthorDate: Thu Sep 11 18:26:58 2014 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Sep 11 18:26:58 2014 +0000
URL: http://sources.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=50658449
Use exception-based approach for cgroup/ulimit setup
Note from William Hubbs:
I spoke with Roy about this, and he pointed out that user-defined
functions may need the limits applied, so it is better to go with a
method that uses exceptions to determine which functions apply the
limits.
X-Gentoo-Bug: 522408
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=522408
---
sh/runscript.sh.in | 34 ++++++++++++++++++++++------------
1 file changed, 22 insertions(+), 12 deletions(-)
diff --git a/sh/runscript.sh.in b/sh/runscript.sh.in
index d4c7c60..b89c460 100644
--- a/sh/runscript.sh.in
+++ b/sh/runscript.sh.in
@@ -209,19 +209,29 @@ unset _conf_d
# Load any system overrides
sourcex -e "@SYSCONFDIR@/rc.conf"
-# Apply any ulimit defined
-[ -n "${rc_ulimit:-$RC_ULIMIT}" ] && ulimit ${rc_ulimit:-$RC_ULIMIT}
-
-# Apply cgroups settings if defined
-if [ "$1" = "start" ] ; then
- if [ "$(command -v cgroup_add_service)" = "cgroup_add_service" ]; then
- cgroup_add_service /sys/fs/cgroup/openrc
- cgroup_add_service /sys/fs/cgroup/systemd/system
+for _cmd; do
+ if [ "$_cmd" != status -a "$_cmd" != describe ]; then
+ # Apply any ulimit defined
+ [ -n "${rc_ulimit:-$RC_ULIMIT}" ] && \
+ ulimit ${rc_ulimit:-$RC_ULIMIT}
+ # Apply cgroups settings if defined
+ if [ "$(command -v cgroup_add_service)" = \
+ "cgroup_add_service" ]
+ then
+ if [ -d /sys/fs/cgroup -a ! -w /sys/fs/cgroup ]; then
+ eerror "No permission to apply cgroup settings"
+ break
+ fi
+ cgroup_add_service /sys/fs/cgroup/openrc
+ cgroup_add_service /sys/fs/cgroup/systemd/system
+ fi
+ [ "$(command -v cgroup_set_limits)" = \
+ "cgroup_set_limits" ] && \
+ cgroup_set_limits
+ break
fi
- [ "$(command -v cgroup_set_limits)" = "cgroup_set_limits" ] && \
- cgroup_set_limits
-fi
-
+done
+
# Load our script
sourcex "$RC_SERVICE"
next reply other threads:[~2014-09-11 19:06 UTC|newest]
Thread overview: 148+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-11 19:06 William Hubbs [this message]
-- strict thread matches above, loose matches on Subject: below --
2018-06-15 22:45 [gentoo-commits] proj/openrc:master commit in: sh/ William Hubbs
2018-05-22 22:12 William Hubbs
2018-03-12 2:43 William Hubbs
2018-02-28 18:45 William Hubbs
2018-02-28 18:45 William Hubbs
2018-02-23 21:53 William Hubbs
2017-12-01 21:48 William Hubbs
2017-10-26 18:58 William Hubbs
2017-10-26 18:58 William Hubbs
2017-10-25 20:10 William Hubbs
2017-09-29 17:52 William Hubbs
2017-09-22 22:25 William Hubbs
2017-09-18 18:07 William Hubbs
2017-09-15 20:32 William Hubbs
2017-09-15 18:44 William Hubbs
2017-09-15 18:31 William Hubbs
2017-09-14 15:57 William Hubbs
2017-09-14 15:57 William Hubbs
2017-08-15 22:19 William Hubbs
2017-03-23 18:27 William Hubbs
2017-02-24 0:19 William Hubbs
2016-12-18 17:54 William Hubbs
2016-12-18 17:22 William Hubbs
2016-12-17 22:57 William Hubbs
2016-09-22 23:21 William Hubbs
2016-09-20 16:36 William Hubbs
2016-09-19 23:05 William Hubbs
2016-09-14 19:00 William Hubbs
2016-09-13 17:54 William Hubbs
2016-09-12 17:59 William Hubbs
2016-07-26 15:54 William Hubbs
2016-07-25 20:54 William Hubbs
2016-07-25 20:54 William Hubbs
2016-07-25 20:54 William Hubbs
2016-05-24 16:43 William Hubbs
2016-05-24 16:43 William Hubbs
2016-02-19 21:34 William Hubbs
2016-01-19 23:02 William Hubbs
2015-12-09 18:42 William Hubbs
2015-12-01 18:31 William Hubbs
2015-10-13 22:45 William Hubbs
2015-10-13 22:45 William Hubbs
2015-10-13 13:36 William Hubbs
2015-10-06 17:17 William Hubbs
2015-10-04 20:37 William Hubbs
2015-08-04 19:41 William Hubbs
2015-07-10 18:26 William Hubbs
2015-07-10 18:26 William Hubbs
2015-05-14 19:29 William Hubbs
2015-05-13 21:56 William Hubbs
2015-04-21 21:33 William Hubbs
2015-04-08 15:33 William Hubbs
2015-03-29 23:37 William Hubbs
2015-01-12 21:02 William Hubbs
2014-09-11 17:03 William Hubbs
2014-08-28 14:49 William Hubbs
2014-08-28 14:49 William Hubbs
2014-08-22 19:10 William Hubbs
2014-08-13 20:29 ` William Hubbs
2014-08-22 19:10 William Hubbs
2014-08-07 18:35 ` William Hubbs
2014-08-22 19:10 William Hubbs
2014-08-13 15:07 ` William Hubbs
2014-07-16 18:14 William Hubbs
2014-07-10 17:08 William Hubbs
2014-07-10 17:08 William Hubbs
2014-06-21 0:44 William Hubbs
2014-06-20 21:22 William Hubbs
2014-05-26 6:52 Robin H. Johnson
2014-04-03 18:05 William Hubbs
2014-01-18 8:50 William Hubbs
2014-01-18 7:56 William Hubbs
2013-12-11 4:47 William Hubbs
2013-11-30 21:33 Mike Frysinger
2013-10-31 21:09 William Hubbs
2013-09-27 21:22 William Hubbs
2013-07-27 16:12 William Hubbs
2013-07-26 1:56 William Hubbs
2013-07-25 6:01 William Hubbs
2013-07-23 23:01 William Hubbs
2013-07-23 23:01 William Hubbs
2013-07-16 18:56 William Hubbs
2013-07-16 18:56 William Hubbs
2013-07-16 18:56 William Hubbs
2013-06-24 20:46 William Hubbs
2013-06-24 20:46 William Hubbs
2013-05-26 2:06 William Hubbs
2013-05-26 1:15 William Hubbs
2013-05-05 19:29 William Hubbs
2013-04-03 16:34 William Hubbs
2013-03-11 6:11 William Hubbs
2013-02-24 3:38 William Hubbs
2013-02-19 22:53 William Hubbs
2013-02-17 2:49 William Hubbs
2013-02-16 7:30 William Hubbs
2013-01-17 3:14 Mike Frysinger
2013-01-15 18:36 William Hubbs
2013-01-15 18:21 William Hubbs
2012-12-22 15:47 William Hubbs
2012-12-22 14:40 William Hubbs
2012-12-19 17:43 William Hubbs
2012-12-07 15:48 William Hubbs
2012-12-06 22:51 William Hubbs
2012-11-26 3:45 William Hubbs
2012-11-06 22:41 William Hubbs
2012-11-05 21:25 Robin H. Johnson
2012-10-22 0:53 William Hubbs
2012-10-22 0:53 William Hubbs
2012-10-21 19:51 William Hubbs
2012-10-17 23:19 William Hubbs
2012-09-26 22:12 Robin H. Johnson
2012-08-16 18:45 Robin H. Johnson
2012-07-02 18:27 William Hubbs
2012-05-16 22:00 Christian Ruppert
2012-05-02 19:50 William Hubbs
2012-04-26 17:59 William Hubbs
2012-04-26 17:21 William Hubbs
2012-04-26 17:12 William Hubbs
2012-04-26 16:28 William Hubbs
2012-03-12 19:05 Robin H. Johnson
2012-03-12 8:38 Robin H. Johnson
2012-02-09 9:56 Robin H. Johnson
2012-01-29 15:53 William Hubbs
2012-01-28 18:26 Christian Ruppert
2012-01-27 4:18 William Hubbs
2012-01-17 18:09 William Hubbs
2011-11-18 14:39 William Hubbs
2011-11-18 6:06 William Hubbs
2011-11-02 13:42 William Hubbs
2011-09-18 20:07 Mike Frysinger
2011-09-13 3:20 William Hubbs
2011-09-12 15:48 Christian Ruppert
2011-09-12 15:48 Christian Ruppert
2011-09-12 15:48 Christian Ruppert
2011-09-07 20:14 William Hubbs
2011-09-07 3:21 William Hubbs
2011-07-26 17:29 William Hubbs
2011-07-06 14:55 William Hubbs
2011-07-03 4:34 William Hubbs
2011-06-27 17:11 William Hubbs
2011-06-27 16:56 William Hubbs
2011-06-04 0:43 Mike Frysinger
2011-05-16 22:49 Mike Frysinger
2011-05-11 19:55 William Hubbs
2011-04-19 16:01 William Hubbs
2011-04-18 22:39 William Hubbs
2011-03-25 0:18 William Hubbs
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1410460018.50658449bd46f1a53b8eb11d34f6eefdd1ceba9c.williamh@OpenRC \
--to=williamh@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox