patch-2.6.6-vs1.9.0
[linux-2.6.git] / arch / ppc64 / kernel / sys_ppc32.c
index 7e4bc83..7b5af0b 100644 (file)
@@ -2456,6 +2456,7 @@ asmlinkage long sys32_time(compat_time_t* tloc)
 int sys32_olduname(struct oldold_utsname * name)
 {
        int error;
+       struct new_utsname *ptr;
        
        if (!name)
                return -EFAULT;
@@ -2463,15 +2464,16 @@ int sys32_olduname(struct oldold_utsname * name)
                return -EFAULT;
   
        down_read(&uts_sem);
-       error = __copy_to_user(&name->sysname,&system_utsname.sysname,__OLD_UTS_LEN);
+       ptr = vx_new_utsname();
+       error = __copy_to_user(&name->sysname,ptr->sysname,__OLD_UTS_LEN);
        error -= __put_user(0,name->sysname+__OLD_UTS_LEN);
-       error -= __copy_to_user(&name->nodename,&system_utsname.nodename,__OLD_UTS_LEN);
+       error -= __copy_to_user(&name->nodename,ptr->nodename,__OLD_UTS_LEN);
        error -= __put_user(0,name->nodename+__OLD_UTS_LEN);
-       error -= __copy_to_user(&name->release,&system_utsname.release,__OLD_UTS_LEN);
+       error -= __copy_to_user(&name->release,ptr->release,__OLD_UTS_LEN);
        error -= __put_user(0,name->release+__OLD_UTS_LEN);
-       error -= __copy_to_user(&name->version,&system_utsname.version,__OLD_UTS_LEN);
+       error -= __copy_to_user(&name->version,ptr->version,__OLD_UTS_LEN);
        error -= __put_user(0,name->version+__OLD_UTS_LEN);
-       error -= __copy_to_user(&name->machine,&system_utsname.machine,__OLD_UTS_LEN);
+       error -= __copy_to_user(&name->machine,ptr->machine,__OLD_UTS_LEN);
        error = __put_user(0,name->machine+__OLD_UTS_LEN);
        up_read(&uts_sem);