]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/miscfs/devfs/devfs_vfsops.c
xnu-7195.101.1.tar.gz
[apple/xnu.git] / bsd / miscfs / devfs / devfs_vfsops.c
index ab3986460ff8bb308240f6d394d9286b9c7c35b9..d5426b182d3e09789e93b1220b393628d58e4ca2 100644 (file)
@@ -134,7 +134,7 @@ devfs_init(__unused struct vfsconf *vfsp)
 
        if (!(logging_config & ATM_TRACE_DISABLE)) {
                devfs_make_node(makedev(7, 0), DEVFS_CHAR,
-                   UID_ROOT, GID_WHEEL, 0600, "oslog");
+                   UID_LOGD, GID_LOGD, 0600, "oslog");
                if (cdevsw_setkqueueok(7, (&(cdevsw[7])), 0) == -1) {
                        return ENOTSUP;
                }
@@ -202,7 +202,7 @@ devfs_mount(struct mount *mp, __unused vnode_t devvp, __unused user_addr_t data,
         *  Fill out some fields
         */
        __IGNORE_WCASTALIGN(mp->mnt_data = (qaddr_t)devfs_mp_p);
-       mp->mnt_vfsstat.f_fsid.val[0] = (int32_t)(uintptr_t)devfs_mp_p;
+       mp->mnt_vfsstat.f_fsid.val[0] = (int32_t)VM_KERNEL_ADDRHASH(devfs_mp_p);
        mp->mnt_vfsstat.f_fsid.val[1] = vfs_typenum(mp);
        mp->mnt_flag |= MNT_LOCAL;
 
@@ -308,7 +308,7 @@ devfs_statfs( struct mount *mp, struct vfsstatfs *sbp, __unused vfs_context_t ct
        sbp->f_bavail = 0;
        sbp->f_files  = devfs_stats.nodes;
        sbp->f_ffree  = 0;
-       sbp->f_fsid.val[0] = (int32_t)(uintptr_t)devfs_mp_p;
+       sbp->f_fsid.val[0] = (int32_t)VM_KERNEL_ADDRHASH(devfs_mp_p);
        sbp->f_fsid.val[1] = vfs_typenum(mp);
 
        return 0;
@@ -495,7 +495,7 @@ devfs_kernel_mount(char * mntname)
        vfs_context_t ctx = vfs_context_kernel();
        char fsname[] = "devfs";
 
-       error = kernel_mount(fsname, NULLVP, NULLVP, mntname, NULL, 0, MNT_DONTBROWSE, KERNEL_MOUNT_NOAUTH, ctx);
+       error = kernel_mount(fsname, NULLVP, NULLVP, mntname, NULL, 0, MNT_DONTBROWSE, KERNEL_MOUNT_NOAUTH | KERNEL_MOUNT_DEVFS, ctx);
        if (error) {
                printf("devfs_kernel_mount: kernel_mount failed: %d\n", error);
                return error;
@@ -504,7 +504,7 @@ devfs_kernel_mount(char * mntname)
        return 0;
 }
 
-struct vfsops devfs_vfsops = {
+const struct vfsops devfs_vfsops = {
        .vfs_mount   = devfs_mount,
        .vfs_start   = devfs_start,
        .vfs_unmount = devfs_unmount,