vfsops
if (mdb_readvar(&cbd->vfsops, "smbfs_vfsops") == -1) {
uintptr_t vfsops; /* filter by vfs ops pointer */
if (cbd->vfsops && cbd->vfsops != (uintptr_t)vfs->vfs_op) {
vfs_freevfsops(vfsops_t *vfsops)
kmem_free(vfsops, sizeof (vfsops_t));
vfs_setops(vfs_t *vfsp, vfsops_t *vfsops)
ASSERT(vfsops != NULL);
vfsp->vfs_op = vfsops;
vfs_matchops(vfs_t *vfsp, vfsops_t *vfsops)
return (vfs_getops(vfsp) == vfsops);
vfsops_t *vfsops;
vfsops = &vswp->vsw_vfsops;
VFS_INIT(vfsp, vfsops, NULL);
vfs_getvfsswbyvfsops(vfsops_t *vfsops)
if (vfsops == &fake_vfsops)
static struct vfsops fake_vfsops;
struct vfsops *vsw_vfsops; /* filesystem operations vector */
struct vfsops *vfs_op; /* operations on VFS */
vfsops_t *vfsops;
if (error = vfs_setfsops(fstype, ctfs_vfstops, &vfsops)) {
(void) vfs_freevfsops(vfsops);
struct vfsops *dc_vfsops;
struct vfsops *fifo_vfsops;
fs_vfsp_global(struct vfsops *ops, dev_t dev, int fstype, uint_t bsize)
extern vfs_t *fs_vfsp_global(struct vfsops *, dev_t, int, uint_t);
vfsops_t *vfsops;
if (error = vfs_setfsops(fstype, objfs_vfstops, &vfsops)) {
(void) vfs_freevfsops(vfsops);
vfsops_t *vfsops;
if (error = vfs_setfsops(fstype, sharefs_vfstops, &vfsops)) {
(void) vfs_freevfsops(vfsops);
static struct vfsops *sockfs_vfsops;
struct vfsops *spec_vfsops;
vfsops_t *vfsops;
vfsops = &vswp->vsw_vfsops;
VFS_INIT(vfsp, vfsops, NULL);
vfs_getvfsswbyvfsops(vfsops_t *vfsops)
if (ALLOCATED_VFSSW(vswp) && &vswp->vsw_vfsops == vfsops) {
vfs_freevfsops(vfsops_t *vfsops)
kmem_free(vfsops, sizeof (vfsops_t));
vfs_setops(vfs_t *vfsp, vfsops_t *vfsops)
ASSERT(vfsops != NULL);
atomic_cas_ptr(&vfsp->vfs_op, op, vfsops) == op) {
fsem_setvfsops(vfsp, vfsops);
vfs_matchops(vfs_t *vfsp, vfsops_t *vfsops)
return (vfs_getops(vfsp) == vfsops);
vfsops_t *vfsops = EIO_vfsops;
VFS_INIT(vfsp, vfsops, NULL);
extern struct vfsops *nfs4_vfsops;
extern void fsem_setvfsops(struct vfs *v, struct vfsops *nops);
extern struct vfsops spec_vfsops;
typedef struct vfsops vfsops_t;