From 65baf8f06be716fc398b13c46e97cc7eab2bb5f0 Mon Sep 17 00:00:00 2001 From: Bruce Evans Date: Sun, 25 Oct 1998 19:26:18 +0000 Subject: Don't follow null bdevsw pointers. The `major(dev) < nblkdev' test rotted when bdevsw[] became sparse. We still depend on magic to avoid having to check that (v_rdev) device numbers in vnodes are not NODEV. --- sys/gnu/fs/ext2fs/ext2_vfsops.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sys/gnu/fs') diff --git a/sys/gnu/fs/ext2fs/ext2_vfsops.c b/sys/gnu/fs/ext2fs/ext2_vfsops.c index 11045341bdf96..ef80d74e154b6 100644 --- a/sys/gnu/fs/ext2fs/ext2_vfsops.c +++ b/sys/gnu/fs/ext2fs/ext2_vfsops.c @@ -276,7 +276,8 @@ ext2_mount(mp, path, data, ndp, p) vrele(devvp); return (ENOTBLK); } - if (major(devvp->v_rdev) >= nblkdev) { + if (major(devvp->v_rdev) >= nblkdev || + bdevsw[major(devvp->v_rdev)] == NULL) { vrele(devvp); return (ENXIO); } -- cgit v1.3