summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.osdl.org>2003-07-17 19:56:15 -0700
committerLinus Torvalds <torvalds@home.osdl.org>2003-07-17 19:56:15 -0700
commite922acb7c731c47f6a1c25d5ef42f3dd42468ee1 (patch)
tree14c6e97441031d3af01ae485f7966b98cb3ce628 /kernel
parentc4aeb06d199f0da77b30bc1ecf8f474aa4b4703a (diff)
parent181d4330bda34cac1cce8f2c34d79fae5dec5f94 (diff)
Manual merge
Diffstat (limited to 'kernel')
-rw-r--r--kernel/sched.c4
-rw-r--r--kernel/sys.c10
2 files changed, 9 insertions, 5 deletions
diff --git a/kernel/sched.c b/kernel/sched.c
index ba4897671015..0bb4f13e95fd 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2080,7 +2080,7 @@ asmlinkage long sys_sched_get_priority_max(int policy)
}
/**
- * sys_sched_get_priority_mix - return minimum RT priority.
+ * sys_sched_get_priority_min - return minimum RT priority.
* @policy: scheduling class.
*
* this syscall returns the minimum rt_priority that can be used
@@ -2541,7 +2541,7 @@ void __might_sleep(char *file, int line)
if (time_before(jiffies, prev_jiffy + HZ))
return;
prev_jiffy = jiffies;
- printk(KERN_ERR "Debug: sleeping function called from illegal"
+ printk(KERN_ERR "Debug: sleeping function called from invalid"
" context at %s:%d\n", file, line);
dump_stack();
}
diff --git a/kernel/sys.c b/kernel/sys.c
index 5419b8dc7d9d..0bd0c5a399a6 100644
--- a/kernel/sys.c
+++ b/kernel/sys.c
@@ -1167,6 +1167,7 @@ asmlinkage long sys_newuname(struct new_utsname __user * name)
asmlinkage long sys_sethostname(char __user *name, int len)
{
int errno;
+ char tmp[__NEW_UTS_LEN];
if (!capable(CAP_SYS_ADMIN))
return -EPERM;
@@ -1174,7 +1175,8 @@ asmlinkage long sys_sethostname(char __user *name, int len)
return -EINVAL;
down_write(&uts_sem);
errno = -EFAULT;
- if (!copy_from_user(system_utsname.nodename, name, len)) {
+ if (!copy_from_user(tmp, name, len)) {
+ memcpy(system_utsname.nodename, tmp, len);
system_utsname.nodename[len] = 0;
errno = 0;
}
@@ -1206,6 +1208,7 @@ asmlinkage long sys_gethostname(char __user *name, int len)
asmlinkage long sys_setdomainname(char __user *name, int len)
{
int errno;
+ char tmp[__NEW_UTS_LEN];
if (!capable(CAP_SYS_ADMIN))
return -EPERM;
@@ -1214,9 +1217,10 @@ asmlinkage long sys_setdomainname(char __user *name, int len)
down_write(&uts_sem);
errno = -EFAULT;
- if (!copy_from_user(system_utsname.domainname, name, len)) {
- errno = 0;
+ if (!copy_from_user(tmp, name, len)) {
+ memcpy(system_utsname.domainname, tmp, len);
system_utsname.domainname[len] = 0;
+ errno = 0;
}
up_write(&uts_sem);
return errno;