1 1.1 mycroft #include <sys/param.h> 2 1.1 mycroft #include <sys/systm.h> 3 1.1 mycroft #include <sys/kernel.h> 4 1.1 mycroft #include <sys/mount.h> 5 1.1 mycroft #include <sys/namei.h> 6 1.1 mycroft #include <sys/vnode.h> 7 1.1 mycroft #include <sys/malloc.h> 8 1.1 mycroft #include <sys/select.h> 9 1.1 mycroft 10 1.1 mycroft #include <miscfs/genfs/genfs.h> 11 1.1 mycroft 12 1.1 mycroft int 13 1.1 mycroft genfs_select(v) 14 1.1 mycroft void *v; 15 1.1 mycroft { 16 1.2 thorpej #if 0 17 1.1 mycroft struct vop_select_args /* { 18 1.1 mycroft struct vnode *a_vp; 19 1.1 mycroft int a_which; 20 1.1 mycroft int a_fflags; 21 1.1 mycroft struct ucred *a_cred; 22 1.1 mycroft struct proc *a_p; 23 1.1 mycroft } */ *ap = v; 24 1.2 thorpej #endif 25 1.1 mycroft 26 1.1 mycroft return (1); 27 1.1 mycroft } 28 1.1 mycroft 29 1.1 mycroft int 30 1.1 mycroft genfs_fsync(v) 31 1.1 mycroft void *v; 32 1.1 mycroft { 33 1.1 mycroft struct vop_fsync_args /* { 34 1.1 mycroft struct vnode *a_vp; 35 1.1 mycroft struct ucred *a_cred; 36 1.1 mycroft int a_waitfor; 37 1.1 mycroft struct proc *a_p; 38 1.1 mycroft } */ *ap = v; 39 1.1 mycroft register struct vnode *vp = ap->a_vp; 40 1.1 mycroft struct timespec ts; 41 1.1 mycroft 42 1.1 mycroft vflushbuf(vp, ap->a_waitfor == MNT_WAIT); 43 1.1 mycroft TIMEVAL_TO_TIMESPEC(&time, &ts); 44 1.1 mycroft return (VOP_UPDATE(ap->a_vp, &ts, &ts, ap->a_waitfor == MNT_WAIT)); 45 1.1 mycroft } 46 1.1 mycroft 47 1.1 mycroft int 48 1.1 mycroft genfs_abortop(v) 49 1.1 mycroft void *v; 50 1.1 mycroft { 51 1.1 mycroft struct vop_abortop_args /* { 52 1.1 mycroft struct vnode *a_dvp; 53 1.1 mycroft struct componentname *a_cnp; 54 1.1 mycroft } */ *ap = v; 55 1.1 mycroft 56 1.1 mycroft if ((ap->a_cnp->cn_flags & (HASBUF | SAVESTART)) == HASBUF) 57 1.1 mycroft FREE(ap->a_cnp->cn_pnbuf, M_NAMEI); 58 1.1 mycroft return (0); 59 1.1 mycroft } 60 1.1 mycroft 61 1.1 mycroft /*ARGSUSED*/ 62 1.1 mycroft int 63 1.1 mycroft genfs_badop(v) 64 1.1 mycroft void *v; 65 1.1 mycroft { 66 1.1 mycroft 67 1.1 mycroft panic("genfs: bad op"); 68 1.1 mycroft } 69 1.1 mycroft 70 1.1 mycroft /*ARGSUSED*/ 71 1.1 mycroft int 72 1.1 mycroft genfs_nullop(v) 73 1.1 mycroft void *v; 74 1.1 mycroft { 75 1.1 mycroft 76 1.1 mycroft return (0); 77 1.1 mycroft } 78 1.1 mycroft 79 1.1 mycroft /*ARGSUSED*/ 80 1.1 mycroft int 81 1.1 mycroft genfs_eopnotsupp(v) 82 1.1 mycroft void *v; 83 1.1 mycroft { 84 1.1 mycroft 85 1.1 mycroft return (EOPNOTSUPP); 86 1.1 mycroft } 87 1.1 mycroft 88 1.1 mycroft /*ARGSUSED*/ 89 1.1 mycroft int 90 1.1 mycroft genfs_ebadf(v) 91 1.1 mycroft void *v; 92 1.1 mycroft { 93 1.1 mycroft 94 1.1 mycroft return (EBADF); 95 1.1 mycroft } 96