Thanks! For other users that managed to create such files: fsck will clean them up.
Best, Conrad On Sun, Oct 22, 2017 at 1:11 AM, Konstantin Belousov <k...@freebsd.org> wrote: > Author: kib > Date: Sun Oct 22 08:11:45 2017 > New Revision: 324853 > URL: https://svnweb.freebsd.org/changeset/base/324853 > > Log: > Remove the support for mknod(S_IFMT), which created dummy vnodes with > VBAD type. > > FFS ffs_write() VOP catches such vnodes and panics, other VOPs do not > check for the type and their behaviour is really undefined. The > comment claims that this support was done for 'badsect' to flag bad > sectors, we do not have such facility in kernel anyway. > > Reported by: Dmitry Vyukov <dvyu...@google.com> > Sponsored by: The FreeBSD Foundation > MFC after: 1 week > > Modified: > head/sys/kern/vfs_syscalls.c > head/sys/sys/priv.h > > Modified: head/sys/kern/vfs_syscalls.c > ============================================================================== > --- head/sys/kern/vfs_syscalls.c Sun Oct 22 07:58:28 2017 > (r324852) > +++ head/sys/kern/vfs_syscalls.c Sun Oct 22 08:11:45 2017 > (r324853) > @@ -1248,9 +1248,6 @@ kern_mknodat(struct thread *td, int fd, char *path, en > if (error == 0 && dev == VNOVAL) > error = EINVAL; > break; > - case S_IFMT: > - error = priv_check(td, PRIV_VFS_MKNOD_BAD); > - break; > case S_IFWHT: > error = priv_check(td, PRIV_VFS_MKNOD_WHT); > break; > @@ -1288,9 +1285,6 @@ restart: > whiteout = 0; > > switch (mode & S_IFMT) { > - case S_IFMT: /* used by badsect to flag bad sectors */ > - vattr.va_type = VBAD; > - break; > case S_IFCHR: > vattr.va_type = VCHR; > break; > > Modified: head/sys/sys/priv.h > ============================================================================== > --- head/sys/sys/priv.h Sun Oct 22 07:58:28 2017 (r324852) > +++ head/sys/sys/priv.h Sun Oct 22 08:11:45 2017 (r324853) > @@ -266,7 +266,7 @@ > #define PRIV_VFS_GETFH 327 /* Can retrieve file handles. > */ > #define PRIV_VFS_GETQUOTA 328 /* getquota(). */ > #define PRIV_VFS_LINK 329 /* bsd.hardlink_check_uid */ > -#define PRIV_VFS_MKNOD_BAD 330 /* Can mknod() to mark bad > inodes. */ > +#define PRIV_VFS_MKNOD_BAD 330 /* Was: mknod() can mark bad > inodes. */ > #define PRIV_VFS_MKNOD_DEV 331 /* Can mknod() to create dev > nodes. */ > #define PRIV_VFS_MKNOD_WHT 332 /* Can mknod() to create > whiteout. */ > #define PRIV_VFS_MOUNT 333 /* Can mount(). */ > _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"