aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel/sys_sunos.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sparc/kernel/sys_sunos.c')
-rw-r--r--arch/sparc/kernel/sys_sunos.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/arch/sparc/kernel/sys_sunos.c b/arch/sparc/kernel/sys_sunos.c
index aa0fb2efb615..9d2cd97d1c3a 100644
--- a/arch/sparc/kernel/sys_sunos.c
+++ b/arch/sparc/kernel/sys_sunos.c
@@ -483,13 +483,18 @@ asmlinkage int sunos_uname(struct sunos_utsname __user *name)
483{ 483{
484 int ret; 484 int ret;
485 down_read(&uts_sem); 485 down_read(&uts_sem);
486 ret = copy_to_user(&name->sname[0], &system_utsname.sysname[0], sizeof(name->sname) - 1); 486 ret = copy_to_user(&name->sname[0], &utsname()->sysname[0],
487 sizeof(name->sname) - 1);
487 if (!ret) { 488 if (!ret) {
488 ret |= __copy_to_user(&name->nname[0], &system_utsname.nodename[0], sizeof(name->nname) - 1); 489 ret |= __copy_to_user(&name->nname[0], &utsname()->nodename[0],
490 sizeof(name->nname) - 1);
489 ret |= __put_user('\0', &name->nname[8]); 491 ret |= __put_user('\0', &name->nname[8]);
490 ret |= __copy_to_user(&name->rel[0], &system_utsname.release[0], sizeof(name->rel) - 1); 492 ret |= __copy_to_user(&name->rel[0], &utsname()->release[0],
491 ret |= __copy_to_user(&name->ver[0], &system_utsname.version[0], sizeof(name->ver) - 1); 493 sizeof(name->rel) - 1);
492 ret |= __copy_to_user(&name->mach[0], &system_utsname.machine[0], sizeof(name->mach) - 1); 494 ret |= __copy_to_user(&name->ver[0], &utsname()->version[0],
495 sizeof(name->ver) - 1);
496 ret |= __copy_to_user(&name->mach[0], &utsname()->machine[0],
497 sizeof(name->mach) - 1);
493 } 498 }
494 up_read(&uts_sem); 499 up_read(&uts_sem);
495 return ret ? -EFAULT : 0; 500 return ret ? -EFAULT : 0;