From: Keith Owens <kaos@ocs.com.au>
To: linux-kernel@vger.kernel.org
Subject: [patch 2.6.7-rc2] Add const to some scheduling functions
Date: Tue, 01 Jun 2004 13:46:56 +1000 [thread overview]
Message-ID: <6525.1086061616@kao2.melbourne.sgi.com> (raw)
Several scheduler macros only read from the task struct, mark them
const. It can generate better code.
Index: 2.6.7-rc2/include/linux/sched.h
===================================================================
--- 2.6.7-rc2.orig/include/linux/sched.h Mon May 31 09:52:55 2004
+++ 2.6.7-rc2/include/linux/sched.h Tue Jun 1 13:40:51 2004
@@ -681,9 +681,9 @@ extern void sched_balance_exec(void);
extern void sched_idle_next(void);
extern void set_user_nice(task_t *p, long nice);
-extern int task_prio(task_t *p);
-extern int task_nice(task_t *p);
-extern int task_curr(task_t *p);
+extern int task_prio(const task_t *p);
+extern int task_nice(const task_t *p);
+extern int task_curr(const task_t *p);
extern int idle_cpu(int cpu);
void yield(void);
@@ -905,7 +905,7 @@ extern void wait_task_inactive(task_t *
#define while_each_thread(g, t) \
while ((t = next_thread(t)) != g)
-extern task_t * FASTCALL(next_thread(task_t *p));
+extern task_t * FASTCALL(next_thread(const task_t *p));
#define thread_group_leader(p) (p->pid == p->tgid)
@@ -1044,7 +1044,7 @@ extern void signal_wake_up(struct task_s
*/
#ifdef CONFIG_SMP
-static inline unsigned int task_cpu(struct task_struct *p)
+static inline unsigned int task_cpu(const struct task_struct *p)
{
return p->thread_info->cpu;
}
Index: 2.6.7-rc2/kernel/exit.c
===================================================================
--- 2.6.7-rc2.orig/kernel/exit.c Mon May 31 09:52:57 2004
+++ 2.6.7-rc2/kernel/exit.c Tue Jun 1 13:40:51 2004
@@ -826,10 +826,10 @@ asmlinkage long sys_exit(int error_code)
do_exit((error_code&0xff)<<8);
}
-task_t fastcall *next_thread(task_t *p)
+task_t fastcall *next_thread(const task_t *p)
{
- struct pid_link *link = p->pids + PIDTYPE_TGID;
- struct list_head *tmp, *head = &link->pidptr->task_list;
+ const struct pid_link *link = p->pids + PIDTYPE_TGID;
+ const struct list_head *tmp, *head = &link->pidptr->task_list;
#ifdef CONFIG_SMP
if (!p->sighand)
Index: 2.6.7-rc2/kernel/sched.c
===================================================================
--- 2.6.7-rc2.orig/kernel/sched.c Mon May 31 09:52:57 2004
+++ 2.6.7-rc2/kernel/sched.c Tue Jun 1 13:40:51 2004
@@ -546,7 +546,7 @@ static inline void resched_task(task_t *
* task_curr - is this task currently executing on a CPU?
* @p: the task in question.
*/
-inline int task_curr(task_t *p)
+inline int task_curr(const task_t *p)
{
return cpu_curr(task_cpu(p)) == p;
}
@@ -2640,7 +2640,7 @@ asmlinkage long sys_nice(int increment)
* RT tasks are offset by -200. Normal tasks are centered
* around 0, value goes from -16 to +15.
*/
-int task_prio(task_t *p)
+int task_prio(const task_t *p)
{
return p->prio - MAX_RT_PRIO;
}
@@ -2649,7 +2649,7 @@ int task_prio(task_t *p)
* task_nice - return the nice value of a given task.
* @p: the task in question.
*/
-int task_nice(task_t *p)
+int task_nice(const task_t *p)
{
return TASK_NICE(p);
}
next reply other threads:[~2004-06-01 3:47 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-01 3:46 Keith Owens [this message]
2004-06-01 7:16 ` Andrew Morton
2004-06-01 9:55 ` Keith Owens
2004-06-01 20:12 ` Paul Jackson
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=6525.1086061616@kao2.melbourne.sgi.com \
--to=kaos@ocs.com.au \
--cc=linux-kernel@vger.kernel.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
all inboxes | Powered by JetHome®