From: tip-bot for Richard Cochran <richard.cochran@omicron.at>
To: linux-tip-commits@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, hpa@zytor.com, mingo@redhat.com,
johnstul@us.ibm.com, tglx@linutronix.de,
richard.cochran@omicron.at
Subject: [tip:timers/core] time: Correct the *settime* parameters
Date: Wed, 2 Feb 2011 21:54:51 GMT [thread overview]
Message-ID: <tip-1e6d767924c74929c0cfe839ae8f37bcee9e544e@git.kernel.org> (raw)
In-Reply-To: <20110201134417.545698637@linutronix.de>
Commit-ID: 1e6d767924c74929c0cfe839ae8f37bcee9e544e
Gitweb: http://git.kernel.org/tip/1e6d767924c74929c0cfe839ae8f37bcee9e544e
Author: Richard Cochran <richard.cochran@omicron.at>
AuthorDate: Tue, 1 Feb 2011 13:50:58 +0000
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Wed, 2 Feb 2011 15:28:11 +0100
time: Correct the *settime* parameters
Both settimeofday() and clock_settime() promise with a 'const'
attribute not to alter the arguments passed in. This patch adds the
missing 'const' attribute into the various kernel functions
implementing these calls.
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Acked-by: John Stultz <johnstul@us.ibm.com>
LKML-Reference: <20110201134417.545698637@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
drivers/char/mmtimer.c | 2 +-
include/linux/posix-timers.h | 5 +++--
include/linux/security.h | 9 +++++----
include/linux/time.h | 5 +++--
kernel/posix-timers.c | 4 ++--
kernel/time.c | 2 +-
kernel/time/timekeeping.c | 2 +-
security/commoncap.c | 2 +-
security/security.c | 2 +-
9 files changed, 18 insertions(+), 15 deletions(-)
diff --git a/drivers/char/mmtimer.c b/drivers/char/mmtimer.c
index e6d7562..ecd0082 100644
--- a/drivers/char/mmtimer.c
+++ b/drivers/char/mmtimer.c
@@ -487,7 +487,7 @@ static int sgi_clock_get(clockid_t clockid, struct timespec *tp)
return 0;
};
-static int sgi_clock_set(clockid_t clockid, struct timespec *tp)
+static int sgi_clock_set(const clockid_t clockid, const struct timespec *tp)
{
u64 nsec;
diff --git a/include/linux/posix-timers.h b/include/linux/posix-timers.h
index 3e23844a..b2c14cb 100644
--- a/include/linux/posix-timers.h
+++ b/include/linux/posix-timers.h
@@ -69,7 +69,8 @@ struct k_itimer {
struct k_clock {
int res; /* in nanoseconds */
int (*clock_getres) (const clockid_t which_clock, struct timespec *tp);
- int (*clock_set) (const clockid_t which_clock, struct timespec * tp);
+ int (*clock_set) (const clockid_t which_clock,
+ const struct timespec *tp);
int (*clock_get) (const clockid_t which_clock, struct timespec * tp);
int (*timer_create) (struct k_itimer *timer);
int (*nsleep) (const clockid_t which_clock, int flags,
@@ -89,7 +90,7 @@ void register_posix_clock(const clockid_t clock_id, struct k_clock *new_clock);
/* error handlers for timer_create, nanosleep and settime */
int do_posix_clock_nonanosleep(const clockid_t, int flags, struct timespec *,
struct timespec __user *);
-int do_posix_clock_nosettime(const clockid_t, struct timespec *tp);
+int do_posix_clock_nosettime(const clockid_t, const struct timespec *tp);
/* function to call to trigger timer event */
int posix_timer_event(struct k_itimer *timr, int si_private);
diff --git a/include/linux/security.h b/include/linux/security.h
index c642bb8..c096aa6 100644
--- a/include/linux/security.h
+++ b/include/linux/security.h
@@ -53,7 +53,7 @@ struct audit_krule;
*/
extern int cap_capable(struct task_struct *tsk, const struct cred *cred,
int cap, int audit);
-extern int cap_settime(struct timespec *ts, struct timezone *tz);
+extern int cap_settime(const struct timespec *ts, const struct timezone *tz);
extern int cap_ptrace_access_check(struct task_struct *child, unsigned int mode);
extern int cap_ptrace_traceme(struct task_struct *parent);
extern int cap_capget(struct task_struct *target, kernel_cap_t *effective, kernel_cap_t *inheritable, kernel_cap_t *permitted);
@@ -1387,7 +1387,7 @@ struct security_operations {
int (*quotactl) (int cmds, int type, int id, struct super_block *sb);
int (*quota_on) (struct dentry *dentry);
int (*syslog) (int type);
- int (*settime) (struct timespec *ts, struct timezone *tz);
+ int (*settime) (const struct timespec *ts, const struct timezone *tz);
int (*vm_enough_memory) (struct mm_struct *mm, long pages);
int (*bprm_set_creds) (struct linux_binprm *bprm);
@@ -1669,7 +1669,7 @@ int security_sysctl(struct ctl_table *table, int op);
int security_quotactl(int cmds, int type, int id, struct super_block *sb);
int security_quota_on(struct dentry *dentry);
int security_syslog(int type);
-int security_settime(struct timespec *ts, struct timezone *tz);
+int security_settime(const struct timespec *ts, const struct timezone *tz);
int security_vm_enough_memory(long pages);
int security_vm_enough_memory_mm(struct mm_struct *mm, long pages);
int security_vm_enough_memory_kern(long pages);
@@ -1904,7 +1904,8 @@ static inline int security_syslog(int type)
return 0;
}
-static inline int security_settime(struct timespec *ts, struct timezone *tz)
+static inline int security_settime(const struct timespec *ts,
+ const struct timezone *tz)
{
return cap_settime(ts, tz);
}
diff --git a/include/linux/time.h b/include/linux/time.h
index 38c5206..7c44e77 100644
--- a/include/linux/time.h
+++ b/include/linux/time.h
@@ -145,8 +145,9 @@ static inline u32 arch_gettimeoffset(void) { return 0; }
#endif
extern void do_gettimeofday(struct timeval *tv);
-extern int do_settimeofday(struct timespec *tv);
-extern int do_sys_settimeofday(struct timespec *tv, struct timezone *tz);
+extern int do_settimeofday(const struct timespec *tv);
+extern int do_sys_settimeofday(const struct timespec *tv,
+ const struct timezone *tz);
#define do_posix_clock_monotonic_gettime(ts) ktime_get_ts(ts)
extern long do_utimes(int dfd, const char __user *filename, struct timespec *times, int flags);
struct itimerval;
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
index 93bd2eb..21b7ca2 100644
--- a/kernel/posix-timers.c
+++ b/kernel/posix-timers.c
@@ -192,7 +192,7 @@ static int common_clock_get(clockid_t which_clock, struct timespec *tp)
}
static inline int common_clock_set(const clockid_t which_clock,
- struct timespec *tp)
+ const struct timespec *tp)
{
return do_sys_settimeofday(tp, NULL);
}
@@ -928,7 +928,7 @@ void exit_itimers(struct signal_struct *sig)
}
/* Not available / possible... functions */
-int do_posix_clock_nosettime(const clockid_t clockid, struct timespec *tp)
+int do_posix_clock_nosettime(const clockid_t clockid, const struct timespec *tp)
{
return -EINVAL;
}
diff --git a/kernel/time.c b/kernel/time.c
index a31b512..5cb8053 100644
--- a/kernel/time.c
+++ b/kernel/time.c
@@ -150,7 +150,7 @@ static inline void warp_clock(void)
* various programs will get confused when the clock gets warped.
*/
-int do_sys_settimeofday(struct timespec *tv, struct timezone *tz)
+int do_sys_settimeofday(const struct timespec *tv, const struct timezone *tz)
{
static int firsttime = 1;
int error = 0;
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index 02c13a3..4f9f65b 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -353,7 +353,7 @@ EXPORT_SYMBOL(do_gettimeofday);
*
* Sets the time of day to the new time and update NTP and notify hrtimers
*/
-int do_settimeofday(struct timespec *tv)
+int do_settimeofday(const struct timespec *tv)
{
struct timespec ts_delta;
unsigned long flags;
diff --git a/security/commoncap.c b/security/commoncap.c
index 64c2ed9..dbfdaed 100644
--- a/security/commoncap.c
+++ b/security/commoncap.c
@@ -93,7 +93,7 @@ int cap_capable(struct task_struct *tsk, const struct cred *cred, int cap,
* Determine whether the current process may set the system clock and timezone
* information, returning 0 if permission granted, -ve if denied.
*/
-int cap_settime(struct timespec *ts, struct timezone *tz)
+int cap_settime(const struct timespec *ts, const struct timezone *tz)
{
if (!capable(CAP_SYS_TIME))
return -EPERM;
diff --git a/security/security.c b/security/security.c
index 739e403..b995428 100644
--- a/security/security.c
+++ b/security/security.c
@@ -202,7 +202,7 @@ int security_syslog(int type)
return security_ops->syslog(type);
}
-int security_settime(struct timespec *ts, struct timezone *tz)
+int security_settime(const struct timespec *ts, const struct timezone *tz)
{
return security_ops->settime(ts, tz);
}
next prev parent reply other threads:[~2011-02-02 21:55 UTC|newest]
Thread overview: 111+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-01 13:50 [patch 00/28] Rework of the PTP support series core code Thomas Gleixner
2011-02-01 13:50 ` [patch 01/28] time: Correct the *settime* parameters Thomas Gleixner
2011-02-01 14:22 ` Thomas Gleixner
2011-02-01 20:32 ` john stultz
2011-02-02 21:54 ` tip-bot for Richard Cochran [this message]
2011-02-01 13:51 ` [patch 02/28] posix-timers: Define nanosleep not supported error separate Thomas Gleixner
2011-02-01 20:32 ` John Stultz
2011-02-02 21:55 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 03/28] posix-timers: Cleanup struct initializers Thomas Gleixner
2011-02-01 20:33 ` john stultz
2011-02-02 21:55 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 04/28] posix-timers: Introduce clock_posix_cpu Thomas Gleixner
2011-02-01 20:34 ` john stultz
2011-02-02 21:56 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 05/28] posix-timers: Introduce clockid_to_kclock() Thomas Gleixner
2011-02-01 20:37 ` john stultz
2011-02-02 21:56 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 06/28] posix-timers: Convert clock_nanosleep to clockid_to_kclock() Thomas Gleixner
2011-02-01 20:41 ` john stultz
2011-02-02 21:57 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 07/28] posix-timers: Convert clock_nanosleep_restart " Thomas Gleixner
2011-02-01 20:42 ` John Stultz
2011-02-01 20:46 ` Thomas Gleixner
2011-02-01 21:08 ` Thomas Gleixner
2011-02-02 21:57 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 08/28] posix-timers: Cleanup restart_block usage Thomas Gleixner
2011-02-01 21:11 ` john stultz
2011-02-01 21:14 ` Thomas Gleixner
2011-02-02 21:57 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 09/28] thread_info: Remove legacy arg0-3 from restart_block Thomas Gleixner
2011-02-01 21:11 ` john stultz
2011-02-02 21:58 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 10/28] posix-cpu-timers: Remove the stub nanosleep functions Thomas Gleixner
2011-02-01 21:14 ` John Stultz
2011-02-02 21:58 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 11/28] posix-timers: Convert clock_settime to clockid_to_kclock() Thomas Gleixner
2011-02-01 21:15 ` john stultz
2011-02-02 21:59 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 12/28] posix-timers: Convert clock_gettime() " Thomas Gleixner
2011-02-01 21:16 ` john stultz
2011-02-02 9:09 ` Richard Cochran
2011-02-02 9:55 ` Thomas Gleixner
2011-02-02 21:59 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 13/28] posix-timers: Convert clock_getres() " Thomas Gleixner
2011-02-01 21:17 ` john stultz
2011-02-02 22:00 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 14/28] posix-timers: Remove useless res field from k_clock Thomas Gleixner
2011-02-01 21:18 ` john stultz
2011-02-02 22:00 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 15/28] posix-timers: Convert timer_create() to clockid_to_kclock() Thomas Gleixner
2011-02-01 21:20 ` john stultz
2011-02-02 22:00 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 16/28] posix-timers: Convert timer_settime() " Thomas Gleixner
2011-02-01 21:22 ` John Stultz
2011-02-02 22:01 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 17/28] posix-timers: Convert timer_gettime() " Thomas Gleixner
2011-02-01 21:23 ` john stultz
2011-02-02 22:01 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 18/28] posix-timers: Convert timer_delete() " Thomas Gleixner
2011-02-01 21:24 ` john stultz
2011-02-02 8:29 ` Richard Cochran
2011-02-02 9:53 ` Thomas Gleixner
2011-02-02 22:02 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 19/28] posix-timers: Remove CLOCK_DISPATCH leftovers Thomas Gleixner
2011-02-01 21:25 ` john stultz
2011-02-02 22:02 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 20/28] posix-timers: Make posix-cpu-timers functions static Thomas Gleixner
2011-02-01 21:28 ` John Stultz
2011-02-01 21:33 ` Thomas Gleixner
2011-02-02 22:03 ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 21/28] posix-timer: Update comment Thomas Gleixner
2011-02-01 21:28 ` john stultz
2011-02-02 22:03 ` [tip:timers/core] " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 22/28] time: Introduce timekeeping_inject_offset Thomas Gleixner
2011-02-02 22:03 ` [tip:timers/core] " tip-bot for John Stultz
2011-02-01 13:52 ` [patch 23/28] ntp: Add ADJ_SETOFFSET mode bit Thomas Gleixner
2011-02-01 21:30 ` john stultz
2011-02-01 13:52 ` [patch 24/28] posix-clocks: Splitout compat timex accessors Thomas Gleixner
2011-02-01 21:31 ` john stultz
2011-02-02 22:04 ` [tip:timers/core] time: " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 25/28] posix clocks: Introduce a syscall for clock tuning Thomas Gleixner
2011-02-01 21:35 ` john stultz
2011-02-02 22:04 ` [tip:timers/core] posix-timers: " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 26/28] posix_clocks: Add clock_adjtime for x86 Thomas Gleixner
2011-02-01 21:36 ` john stultz
2011-02-02 22:05 ` [tip:timers/core] x86: " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 27/28] posix-timers: Add support for fd based clocks Thomas Gleixner
2011-02-01 21:38 ` john stultz
2011-02-02 9:19 ` Richard Cochran
2011-02-02 10:33 ` Thomas Gleixner
2011-02-02 22:05 ` [tip:timers/core] " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 28/28] posix clocks: Introduce dynamic clocks Thomas Gleixner
2011-02-01 21:49 ` john stultz
2011-02-01 22:04 ` Thomas Gleixner
2011-02-02 7:50 ` Richard Cochran
2011-02-02 10:37 ` Thomas Gleixner
2011-02-02 11:25 ` Thomas Gleixner
2011-02-02 22:06 ` [tip:timers/core] posix-timers: Cleanup namespace tip-bot for Thomas Gleixner
2011-02-02 22:06 ` [tip:timers/core] posix clocks: Introduce dynamic clocks tip-bot for Richard Cochran
2011-03-03 14:50 ` [patch 28/28] " torbenh
2011-03-03 16:01 ` Richard Cochran
2011-03-03 17:07 ` torbenh
2011-03-04 6:05 ` Richard Cochran
2011-02-02 8:17 ` [patch 00/28] Rework of the PTP support series core code Richard Cochran
2011-02-02 13:53 ` Richard Cochran
2011-02-02 22:04 ` [tip:timers/core] ntp: Add ADJ_SETOFFSET mode bit tip-bot for Richard Cochran
2011-02-18 9:07 ` Richard Cochran
2011-02-18 16:07 ` [tip:timers/core] ntp: Remove redundant and incorrect parameter check tip-bot for Richard Cochran
2011-03-01 15:38 ` [patch 00/28] Rework of the PTP support series core code torbenh
2011-03-01 18:50 ` Richard Cochran
2011-03-02 9:41 ` torbenh
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=tip-1e6d767924c74929c0cfe839ae8f37bcee9e544e@git.kernel.org \
--to=richard.cochran@omicron.at \
--cc=hpa@zytor.com \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
/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
Powered by JetHome