Hi Linus,
Almost all extern decalarations of do_sys_mount() throughout the entire
kernel (several architectures) were wrong. Also their number was
sufficiently large to warrant placing declaration in the common header.
Also, while I was there I removed unnecessary initializations of
dir/dev/type_page=0 in sys_mount.
Also, to be consistent with the fact that sys_foo's work is done by do_foo
(e.g. sys_umount -> do_umount) I renamed do_sys_mount -> do_mount.
Tested, of course.
Regards,
Tigran
diff -urN -X dontdiff linux/arch/alpha/kernel/osf_sys.c domount/arch/alpha/kernel/osf_sys.c
--- linux/arch/alpha/kernel/osf_sys.c Tue May 9 08:40:24 2000
+++ domount/arch/alpha/kernel/osf_sys.c Wed May 10 10:20:10 2000
@@ -42,7 +42,6 @@
#include <asm/hwrpb.h>
#include <asm/processor.h>
-extern long do_sys_mount(char *, char *, char *, int, void *);
extern int do_pipe(int *);
extern asmlinkage int sys_swapon(const char *specialfile, int swap_flags);
@@ -377,7 +376,7 @@
retval = PTR_ERR(devname);
if (IS_ERR(devname))
goto out;
- retval = do_sys_mount(devname, dirname, "ext2", flags, NULL);
+ retval = do_mount(devname, dirname, "ext2", flags, NULL);
putname(devname);
out:
return retval;
@@ -396,7 +395,7 @@
retval = PTR_ERR(devname);
if (IS_ERR(devname))
goto out;
- retval = do_sys_mount(devname, dirname, "iso9660", flags, NULL);
+ retval = do_mount(devname, dirname, "iso9660", flags, NULL);
putname(devname);
out:
return retval;
@@ -409,7 +408,7 @@
if (copy_from_user(&tmp, args, sizeof(tmp)))
return -EFAULT;
- return do_sys_mount("", dirname, "proc", flags, NULL);
+ return do_mount("", dirname, "proc", flags, NULL);
}
asmlinkage int osf_mount(unsigned long typenr, char *path, int flag, void *data)
diff -urN -X dontdiff linux/arch/ia64/ia32/sys_ia32.c domount/arch/ia64/ia32/sys_ia32.c
--- linux/arch/ia64/ia32/sys_ia32.c Thu Apr 27 09:01:29 2000
+++ domount/arch/ia64/ia32/sys_ia32.c Wed May 10 10:21:47 2000
@@ -2735,8 +2735,6 @@
extern asmlinkage long sys_mount(char * dev_name, char * dir_name, char * type,
unsigned long new_flags, void *data);
-extern long do_sys_mount(char * dev_name, char * dir_name, char * type,
- unsigned long new_flags, void *data);
#define SMBFS_NAME "smbfs"
#define NCPFS_NAME "ncpfs"
@@ -2784,7 +2782,7 @@
do_smb_super_data_conv((void *)data_page);
else
panic("The problem is here...");
- err = do_sys_mount((char *)dev_page, (char *)dir_page,
+ err = do_mount((char *)dev_page, (char *)dir_page,
(char *)type_page, new_flags,
(void *)data_page);
if(data_page)
diff -urN -X dontdiff linux/arch/sparc/kernel/sys_sunos.c domount/arch/sparc/kernel/sys_sunos.c
--- linux/arch/sparc/kernel/sys_sunos.c Tue May 9 08:40:24 2000
+++ domount/arch/sparc/kernel/sys_sunos.c Wed May 10 10:20:50 2000
@@ -634,7 +634,6 @@
extern dev_t get_unnamed_dev(void);
extern void put_unnamed_dev(dev_t);
-extern asmlinkage long do_sys_mount(char *, char *, char *, int, void *);
extern asmlinkage int sys_connect(int fd, struct sockaddr *uservaddr, int addrlen);
extern asmlinkage int sys_socket(int family, int type, int protocol);
extern asmlinkage int sys_bind(int fd, struct sockaddr *umyaddr, int addrlen);
@@ -754,7 +753,7 @@
linux_nfs_mount.hostname [255] = 0;
putname (the_name);
- return do_sys_mount ("", dir_name, "nfs", linux_flags, &linux_nfs_mount);
+ return do_mount ("", dir_name, "nfs", linux_flags, &linux_nfs_mount);
}
asmlinkage int
@@ -814,7 +813,7 @@
ret = PTR_ERR(dev_fname);
if (IS_ERR(dev_fname))
goto out2;
- ret = do_sys_mount(dev_fname, dir_page, type_page, linux_flags, NULL);
+ ret = do_mount(dev_fname, dir_page, type_page, linux_flags, NULL);
if (dev_fname)
putname(dev_fname);
out2:
diff -urN -X dontdiff linux/arch/sparc64/kernel/sys_sparc32.c domount/arch/sparc64/kernel/sys_sparc32.c
--- linux/arch/sparc64/kernel/sys_sparc32.c Tue May 9 08:40:24 2000
+++ domount/arch/sparc64/kernel/sys_sparc32.c Wed May 10 10:21:11 2000
@@ -1742,9 +1742,6 @@
return 0;
}
-extern long do_sys_mount(char * dev_page, char * dir_page, char * type_page,
- unsigned long new_flags, char * data_page);
-
#define SMBFS_NAME "smbfs"
#define NCPFS_NAME "ncpfs"
@@ -1784,7 +1781,7 @@
goto dev_out;
if (!is_smb && !is_ncp) {
- err = do_sys_mount((char*)dev_page, (char*)dir_page,
+ err = do_mount((char*)dev_page, (char*)dir_page,
(char*)type_page, new_flags, (char*)data_page);
} else {
if (is_ncp)
@@ -1792,7 +1789,7 @@
else
do_smb_super_data_conv((void *)data_page);
- err = do_sys_mount((char*)dev_page, (char*)dir_page,
+ err = do_mount((char*)dev_page, (char*)dir_page,
(char*)type_page, new_flags, (char*)data_page);
}
free_page(dir_page);
diff -urN -X dontdiff linux/arch/sparc64/kernel/sys_sunos32.c domount/arch/sparc64/kernel/sys_sunos32.c
--- linux/arch/sparc64/kernel/sys_sunos32.c Tue May 9 08:40:24 2000
+++ domount/arch/sparc64/kernel/sys_sunos32.c Wed May 10 10:21:31 2000
@@ -598,7 +598,6 @@
char *netname; /* server's netname */
};
-extern long do_sys_mount(const char *, const char *, char *, int, void *);
extern dev_t get_unnamed_dev(void);
extern void put_unnamed_dev(dev_t);
extern asmlinkage int sys_mount(char *, char *, char *, unsigned long, void *);
@@ -727,7 +726,7 @@
linux_nfs_mount.hostname [255] = 0;
putname (the_name);
- return do_sys_mount ("", dir_name, "nfs", linux_flags, &linux_nfs_mount);
+ return do_mount ("", dir_name, "nfs", linux_flags, &linux_nfs_mount);
}
/* XXXXXXXXXXXXXXXXXXXX */
@@ -787,7 +786,7 @@
ret = PTR_ERR(dev_fname);
if (IS_ERR(dev_fname))
goto out2;
- ret = do_sys_mount(dev_fname, dir_page, type_page, linux_flags, NULL);
+ ret = do_mount(dev_fname, dir_page, type_page, linux_flags, NULL);
if (dev_fname)
putname(dev_fname);
out2:
diff -urN -X dontdiff linux/fs/devfs/base.c domount/fs/devfs/base.c
--- linux/fs/devfs/base.c Tue May 9 08:40:25 2000
+++ domount/fs/devfs/base.c Wed May 10 10:20:16 2000
@@ -3431,11 +3431,8 @@
void __init mount_devfs_fs (void)
{
int err;
- extern long do_sys_mount (char *dev_name, char *dir_name,
- char *type, int flags, void *data);
-
if ( (boot_options & OPTION_NOMOUNT) ) return;
- err = do_sys_mount ("none", "/dev", "devfs", 0, "");
+ err = do_mount ("none", "/dev", "devfs", 0, "");
if (err == 0) printk ("Mounted devfs on /dev\n");
else printk ("Warning: unable to mount devfs, err: %d\n", err);
} /* End Function mount_devfs_fs */
diff -urN -X dontdiff linux/fs/super.c domount/fs/super.c
--- linux/fs/super.c Tue May 9 08:40:26 2000
+++ domount/fs/super.c Wed May 10 10:22:31 2000
@@ -1186,7 +1186,7 @@
* aren't used, as the syscall assumes we are talking to an older
* version that didn't understand them.
*/
-long do_sys_mount(char * dev_name, char * dir_name, char *type_page,
+long do_mount(char * dev_name, char * dir_name, char *type_page,
unsigned long new_flags, void *data_page)
{
struct file_system_type * fstype;
@@ -1279,9 +1279,9 @@
unsigned long new_flags, void * data)
{
int retval;
- unsigned long data_page = 0;
- unsigned long type_page = 0;
- unsigned long dev_page = 0;
+ unsigned long data_page;
+ unsigned long type_page;
+ unsigned long dev_page;
char *dir_page;
lock_kernel();
@@ -1309,7 +1309,7 @@
goto out2;
retval = copy_mount_options (data, &data_page);
if (retval >= 0) {
- retval = do_sys_mount((char*)dev_page,dir_page,(char*)type_page,
+ retval = do_mount((char*)dev_page,dir_page,(char*)type_page,
new_flags, (void*)data_page);
free_page(data_page);
}
diff -urN -X dontdiff linux/include/linux/fs.h domount/include/linux/fs.h
--- linux/include/linux/fs.h Tue May 9 08:40:26 2000
+++ domount/include/linux/fs.h Wed May 10 10:22:37 2000
@@ -794,6 +794,8 @@
extern struct vfsmount *kern_mount(struct file_system_type *);
extern void kern_umount(struct vfsmount *);
extern int may_umount(struct vfsmount *);
+extern long do_mount(char *, char *, char *, unsigned long, void *);
+
extern int vfs_statfs(struct super_block *, struct statfs *);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Mon May 15 2000 - 21:00:15 EST