From: Andy P. <at...@us...> - 2002-04-10 18:36:31
|
Update of /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris In directory usw-pr-cvs1:/tmp/cvs-serv32333/sparc64/solaris Modified Files: conv.h entry64.S fs.c ioctl.c ipc.c misc.c signal.c signal.h socket.c socksys.c socksys.h systbl.S timod.c Log Message: synch 2.4.15 commit 46 Index: conv.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/conv.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 Index: entry64.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/entry64.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 Index: fs.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/fs.c,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 --- fs.c 25 Feb 2001 23:15:20 -0000 1.1.1.2 +++ fs.c 10 Apr 2002 15:21:25 -0000 1.2 @@ -406,21 +406,21 @@ u32 f_filler[16]; }; -static int report_statvfs(struct inode *inode, u32 buf) +static int report_statvfs(struct vfsmount *mnt, struct inode *inode, u32 buf) { struct statfs s; int error; struct sol_statvfs *ss = (struct sol_statvfs *)A(buf); - error = vfs_statfs(inode->i_sb, &s); + error = vfs_statfs(mnt->mnt_sb, &s); if (!error) { - const char *p = inode->i_sb->s_type->name; + const char *p = mnt->mnt_sb->s_type->name; int i = 0; int j = strlen (p); if (j > 15) j = 15; if (IS_RDONLY(inode)) i = 1; - if (IS_NOSUID(inode)) i |= 2; + if (mnt->mnt_flags & MNT_NOSUID) i |= 2; if (put_user (s.f_bsize, &ss->f_bsize) || __put_user (0, &ss->f_frsize) || __put_user (s.f_blocks, &ss->f_blocks) || @@ -440,21 +440,21 @@ return error; } -static int report_statvfs64(struct inode *inode, u32 buf) +static int report_statvfs64(struct vfsmount *mnt, struct inode *inode, u32 buf) { struct statfs s; int error; struct sol_statvfs64 *ss = (struct sol_statvfs64 *)A(buf); - error = vfs_statfs(inode->i_sb, &s); + error = vfs_statfs(mnt->mnt_sb, &s); if (!error) { - const char *p = inode->i_sb->s_type->name; + const char *p = mnt->mnt_sb->s_type->name; int i = 0; int j = strlen (p); if (j > 15) j = 15; if (IS_RDONLY(inode)) i = 1; - if (IS_NOSUID(inode)) i |= 2; + if (mnt->mnt_flags & MNT_NOSUID) i |= 2; if (put_user (s.f_bsize, &ss->f_bsize) || __put_user (0, &ss->f_frsize) || __put_user (s.f_blocks, &ss->f_blocks) || @@ -482,7 +482,7 @@ error = user_path_walk((const char *)A(path),&nd); if (!error) { struct inode * inode = nd.dentry->d_inode; - error = report_statvfs(inode, buf); + error = report_statvfs(nd.mnt, inode, buf); path_release(&nd); } return error; @@ -496,7 +496,7 @@ error = -EBADF; file = fget(fd); if (file) { - error = report_statvfs(file->f_dentry->d_inode, buf); + error = report_statvfs(file->f_vfsmnt, file->f_dentry->d_inode, buf); fput(file); } @@ -512,7 +512,7 @@ error = user_path_walk((const char *)A(path), &nd); if (!error) { struct inode * inode = nd.dentry->d_inode; - error = report_statvfs64(inode, buf); + error = report_statvfs64(nd.mnt, inode, buf); path_release(&nd); } unlock_kernel(); @@ -528,7 +528,7 @@ file = fget(fd); if (file) { lock_kernel(); - error = report_statvfs64(file->f_dentry->d_inode, buf); + error = report_statvfs64(file->f_vfsmnt, file->f_dentry->d_inode, buf); unlock_kernel(); fput(file); } Index: ioctl.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/ioctl.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 Index: ipc.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/ipc.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 Index: misc.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/misc.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- misc.c 14 Jan 2001 19:45:32 -0000 1.1.1.1 +++ misc.c 10 Apr 2002 15:21:25 -0000 1.2 @@ -92,12 +92,12 @@ ret_type = flags & _MAP_NEW; flags &= ~_MAP_NEW; - down(¤t->mm->mmap_sem); + down_write(¤t->mm->mmap_sem); flags &= ~(MAP_EXECUTABLE | MAP_DENYWRITE); retval = do_mmap(file, (unsigned long) addr, (unsigned long) len, (unsigned long) prot, (unsigned long) flags, off); - up(¤t->mm->mmap_sem); + up_write(¤t->mm->mmap_sem); if(!ret_type) retval = ((retval < 0xf0000000) ? 0 : retval); @@ -708,13 +708,14 @@ extern long solaris_to_linux_signals[], linux_to_solaris_signals[]; struct exec_domain solaris_exec_domain = { - "Solaris", - (lcall7_func)NULL, - 1, 1, /* PER_SVR4 personality */ - solaris_to_linux_signals, - linux_to_solaris_signals, - THIS_MODULE, - NULL + name: "Solaris", + handler: NULL, + pers_low: 1, /* PER_SVR4 personality */ + pers_high: 1, + signal_map: solaris_to_linux_signals, + signal_invmap: linux_to_solaris_signals, + module: THIS_MODULE, + next: NULL }; extern int init_socksys(void); Index: signal.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/signal.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 Index: signal.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/signal.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 Index: socket.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/socket.c,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 Index: socksys.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/socksys.c,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 Index: socksys.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/socksys.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 Index: systbl.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/systbl.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 Index: timod.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/sparc64/solaris/timod.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- timod.c 14 Jan 2001 19:45:40 -0000 1.1.1.1 +++ timod.c 10 Apr 2002 15:21:25 -0000 1.2 @@ -611,7 +611,7 @@ return 0; } default: - printk("timod_putmsg: unsuported command %u.\n", ret); + printk(KERN_INFO "timod_putmsg: unsupported command %u.\n", ret); break; } return -EINVAL; @@ -699,10 +699,7 @@ } if (ctl_maxlen >= 0 && sock->pfirst) { struct T_primsg *it = sock->pfirst; -#ifndef min -#define min(a,b) ((a)<(b)?(a):(b)) -#endif - int l = min(ctl_maxlen, it->length); + int l = min_t(int, ctl_maxlen, it->length); SCHECK_MAGIC((char*)((u64)(((char *)&it->type)+sock->offset+it->length+7)&~7),MKCTL_MAGIC); SOLD("purting ctl data"); if(copy_to_user(ctl_buf, @@ -815,7 +812,7 @@ filp->f_flags |= O_NONBLOCK; SOLD("calling recvfrom"); sys_recvfrom = (int (*)(int, void *, size_t, unsigned, struct sockaddr *, int *))SYS(recvfrom); - error = sys_recvfrom(fd, data_buf, min(0,data_maxlen), 0, (struct sockaddr*)tmpbuf, ctl_len); + error = sys_recvfrom(fd, data_buf, data_maxlen, 0, (struct sockaddr*)tmpbuf, ctl_len); filp->f_flags = oldflags; if (error < 0) return error; |