Module Name: src
Committed By: pooka
Date: Thu Apr 8 16:04:35 UTC 2010
Modified Files:
src/sys/fs/msdosfs: denode.h msdosfs_vnops.c
Log Message:
In genfs where available.
The only functional change is mknod now returning EOPNOTSUPP instead
of EINVAL. I make this sacrifice willingly and with a clean conscience.
To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 src/sys/fs/msdosfs/denode.h
cvs rdiff -u -r1.62 -r1.63 src/sys/fs/msdosfs/msdosfs_vnops.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/fs/msdosfs/denode.h
diff -u src/sys/fs/msdosfs/denode.h:1.17 src/sys/fs/msdosfs/denode.h:1.18
--- src/sys/fs/msdosfs/denode.h:1.17 Thu Apr 8 15:03:33 2010
+++ src/sys/fs/msdosfs/denode.h Thu Apr 8 16:04:35 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: denode.h,v 1.17 2010/04/08 15:03:33 pooka Exp $ */
+/* $NetBSD: denode.h,v 1.18 2010/04/08 16:04:35 pooka Exp $ */
/*-
* Copyright (C) 1994, 1995, 1997 Wolfgang Solfrank.
@@ -259,7 +259,6 @@
*/
int msdosfs_lookup (void *);
int msdosfs_create (void *);
-int msdosfs_mknod (void *);
int msdosfs_close (void *);
int msdosfs_access (void *);
int msdosfs_getattr (void *);
@@ -274,11 +273,9 @@
int msdosfs_fsync (void *);
#define msdosfs_seek genfs_seek
int msdosfs_remove (void *);
-int msdosfs_link (void *);
int msdosfs_rename (void *);
int msdosfs_mkdir (void *);
int msdosfs_rmdir (void *);
-int msdosfs_symlink (void *);
int msdosfs_readdir (void *);
#define msdosfs_abortop genfs_abortop
int msdosfs_inactive (void *);
Index: src/sys/fs/msdosfs/msdosfs_vnops.c
diff -u src/sys/fs/msdosfs/msdosfs_vnops.c:1.62 src/sys/fs/msdosfs/msdosfs_vnops.c:1.63
--- src/sys/fs/msdosfs/msdosfs_vnops.c:1.62 Thu Apr 8 15:03:33 2010
+++ src/sys/fs/msdosfs/msdosfs_vnops.c Thu Apr 8 16:04:35 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: msdosfs_vnops.c,v 1.62 2010/04/08 15:03:33 pooka Exp $ */
+/* $NetBSD: msdosfs_vnops.c,v 1.63 2010/04/08 16:04:35 pooka Exp $ */
/*-
* Copyright (C) 1994, 1995, 1997 Wolfgang Solfrank.
@@ -48,7 +48,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: msdosfs_vnops.c,v 1.62 2010/04/08 15:03:33 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: msdosfs_vnops.c,v 1.63 2010/04/08 16:04:35 pooka Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -171,21 +171,6 @@
}
int
-msdosfs_mknod(void *v)
-{
- struct vop_mknod_args /* {
- struct vnode *a_dvp;
- struct vnode **a_vpp;
- struct componentname *a_cnp;
- struct vattr *a_vap;
- } */ *ap = v;
-
- PNBUF_PUT(ap->a_cnp->cn_pnbuf);
- vput(ap->a_dvp);
- return (EINVAL);
-}
-
-int
msdosfs_close(void *v)
{
struct vop_close_args /* {
@@ -751,25 +736,6 @@
}
/*
- * DOS filesystems don't know what links are. But since we already called
- * msdosfs_lookup() with create and lockparent, the parent is locked so we
- * have to free it before we return the error.
- */
-int
-msdosfs_link(void *v)
-{
- struct vop_link_args /* {
- struct vnode *a_dvp;
- struct vnode *a_vp;
- struct componentname *a_cnp;
- } */ *ap = v;
-
- VOP_ABORTOP(ap->a_dvp, ap->a_cnp);
- vput(ap->a_dvp);
- return (EOPNOTSUPP);
-}
-
-/*
* Renames on files require moving the denode to a new hash queue since the
* denode's location is used to compute which hash queue to put the file
* in. Unless it is a rename in place. For example "mv a b".
@@ -1384,25 +1350,6 @@
return (error);
}
-/*
- * DOS filesystems don't know what symlinks are.
- */
-int
-msdosfs_symlink(void *v)
-{
- struct vop_symlink_args /* {
- struct vnode *a_dvp;
- struct vnode **a_vpp;
- struct componentname *a_cnp;
- struct vattr *a_vap;
- char *a_target;
- } */ *ap = v;
-
- VOP_ABORTOP(ap->a_dvp, ap->a_cnp);
- vput(ap->a_dvp);
- return (EOPNOTSUPP);
-}
-
int
msdosfs_readdir(void *v)
{
@@ -1914,7 +1861,7 @@
{ &vop_default_desc, vn_default_error },
{ &vop_lookup_desc, msdosfs_lookup }, /* lookup */
{ &vop_create_desc, msdosfs_create }, /* create */
- { &vop_mknod_desc, msdosfs_mknod }, /* mknod */
+ { &vop_mknod_desc, genfs_eopnotsupp }, /* mknod */
{ &vop_open_desc, genfs_nullop }, /* open */
{ &vop_close_desc, msdosfs_close }, /* close */
{ &vop_access_desc, msdosfs_access }, /* access */
@@ -1931,11 +1878,11 @@
{ &vop_fsync_desc, msdosfs_fsync }, /* fsync */
{ &vop_seek_desc, msdosfs_seek }, /* seek */
{ &vop_remove_desc, msdosfs_remove }, /* remove */
- { &vop_link_desc, msdosfs_link }, /* link */
+ { &vop_link_desc, genfs_eopnotsupp }, /* link */
{ &vop_rename_desc, msdosfs_rename }, /* rename */
{ &vop_mkdir_desc, msdosfs_mkdir }, /* mkdir */
{ &vop_rmdir_desc, msdosfs_rmdir }, /* rmdir */
- { &vop_symlink_desc, msdosfs_symlink }, /* symlink */
+ { &vop_symlink_desc, genfs_eopnotsupp }, /* symlink */
{ &vop_readdir_desc, msdosfs_readdir }, /* readdir */
{ &vop_readlink_desc, genfs_einval }, /* readlink */
{ &vop_abortop_desc, msdosfs_abortop }, /* abortop */