aboutsummaryrefslogtreecommitdiffstats
path: root/asterisk.c
diff options
context:
space:
mode:
authortilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2007-04-09 02:49:06 +0000
committertilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2007-04-09 02:49:06 +0000
commit2732e56a5264c6a9b43b9dc38ae1a66327b85d59 (patch)
treeb19bb4783ad399be73284dfe6cd667f459d78ea0 /asterisk.c
parent9af220fc48bfd979b6e75bcb3d722d9f00bb829f (diff)
Don't check for error when lowering priority (according to the manpage, it should never happen anyway). It might could happen, though, if another thread messed with the priority, so safeguard against that (reported via -dev list).
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@60849 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'asterisk.c')
-rw-r--r--asterisk.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/asterisk.c b/asterisk.c
index 228a1acd5..9c484605a 100644
--- a/asterisk.c
+++ b/asterisk.c
@@ -795,6 +795,7 @@ int ast_set_priority(int pri)
struct sched_param sched;
memset(&sched, 0, sizeof(sched));
#ifdef __linux__
+#undef sched_setscheduler
if (pri) {
sched.sched_priority = 10;
if (sched_setscheduler(0, SCHED_RR, &sched)) {
@@ -805,12 +806,11 @@ int ast_set_priority(int pri)
ast_verbose("Set to realtime thread\n");
} else {
sched.sched_priority = 0;
- if (sched_setscheduler(0, SCHED_OTHER, &sched)) {
- ast_log(LOG_WARNING, "Unable to set normal priority\n");
- return -1;
- }
+ /* According to the manpage, this can never fail, with these parameters. */
+ sched_setscheduler(0, SCHED_OTHER, &sched);
}
#else
+#undef setpriority
if (pri) {
if (setpriority(PRIO_PROCESS, 0, -10) == -1) {
ast_log(LOG_WARNING, "Unable to set high priority\n");
@@ -819,10 +819,8 @@ int ast_set_priority(int pri)
if (option_verbose)
ast_verbose("Set to high priority\n");
} else {
- if (setpriority(PRIO_PROCESS, 0, 0) == -1) {
- ast_log(LOG_WARNING, "Unable to set normal priority\n");
- return -1;
- }
+ /* According to the manpage, this can never fail, with these parameters. */
+ setpriority(PRIO_PROCESS, 0, 0);
}
#endif
return 0;