Changeset View
Changeset View
Standalone View
Standalone View
sys/fs/devfs/devfs_vfsops.c
Show First 20 Lines • Show All 125 Lines • ▼ Show 20 Lines | devfs_mount(struct mount *mp) | ||||
fmp = malloc(sizeof *fmp, M_DEVFS, M_WAITOK | M_ZERO); | fmp = malloc(sizeof *fmp, M_DEVFS, M_WAITOK | M_ZERO); | ||||
fmp->dm_idx = alloc_unr(devfs_unr); | fmp->dm_idx = alloc_unr(devfs_unr); | ||||
sx_init(&fmp->dm_lock, "devfsmount"); | sx_init(&fmp->dm_lock, "devfsmount"); | ||||
fmp->dm_holdcnt = 1; | fmp->dm_holdcnt = 1; | ||||
MNT_ILOCK(mp); | MNT_ILOCK(mp); | ||||
mp->mnt_flag |= MNT_LOCAL; | mp->mnt_flag |= MNT_LOCAL; | ||||
mp->mnt_kern_flag |= MNTK_LOOKUP_SHARED | MNTK_EXTENDED_SHARED | | mp->mnt_kern_flag |= MNTK_LOOKUP_SHARED | MNTK_EXTENDED_SHARED | | ||||
MNTK_NOMSYNC; | MNTK_NOMSYNC | MNTK_USES_BCACHE; | ||||
#ifdef MAC | #ifdef MAC | ||||
mp->mnt_flag |= MNT_MULTILABEL; | mp->mnt_flag |= MNT_MULTILABEL; | ||||
#endif | #endif | ||||
MNT_IUNLOCK(mp); | MNT_IUNLOCK(mp); | ||||
fmp->dm_mount = mp; | fmp->dm_mount = mp; | ||||
mp->mnt_data = (void *) fmp; | mp->mnt_data = (void *) fmp; | ||||
vfs_getnewfsid(mp); | vfs_getnewfsid(mp); | ||||
▲ Show 20 Lines • Show All 106 Lines • Show Last 20 Lines |