aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeel Natu <neel@FreeBSD.org>2013-04-13 05:11:21 +0000
committerNeel Natu <neel@FreeBSD.org>2013-04-13 05:11:21 +0000
commit26d66b9d585c9204f196dbd0f1c25774a1ca4317 (patch)
tree26669c74e9bd685776fb44d8f4d3287dd07e96e8
parent933c7bc907469df9b81b2972e106cca3ac5528a0 (diff)
downloadsrc-26d66b9d585c9204f196dbd0f1c25774a1ca4317.tar.gz
src-26d66b9d585c9204f196dbd0f1c25774a1ca4317.zip
Use the MAKEDEV_CHECKNAME flag to check for an invalid device name and return
an error instead of panicking. Obtained from: NetApp
Notes
Notes: svn path=/head/; revision=249435
-rw-r--r--sys/amd64/vmm/vmm_dev.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/amd64/vmm/vmm_dev.c b/sys/amd64/vmm/vmm_dev.c
index 7608d5ca0b7c..4a3c4cdb66f2 100644
--- a/sys/amd64/vmm/vmm_dev.c
+++ b/sys/amd64/vmm/vmm_dev.c
@@ -497,8 +497,12 @@ sysctl_vmm_create(SYSCTL_HANDLER_ARGS)
return (EEXIST);
}
- sc->cdev = make_dev(&vmmdevsw, 0, UID_ROOT, GID_WHEEL, 0600,
- "vmm/%s", buf);
+ error = make_dev_p(MAKEDEV_CHECKNAME, &sc->cdev, &vmmdevsw, NULL,
+ UID_ROOT, GID_WHEEL, 0600, "vmm/%s", buf);
+ if (error != 0) {
+ vmmdev_destroy(sc, TRUE);
+ return (error);
+ }
sc->cdev->si_drv1 = sc;
return (0);