summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bhyve
diff options
context:
space:
mode:
authorneel <neel@FreeBSD.org>2013-10-09 03:56:07 +0000
committerneel <neel@FreeBSD.org>2013-10-09 03:56:07 +0000
commitf9f9a7e61707f80f49be34d2c1af7490549580f9 (patch)
treeacc9a278b9f141070d676a08d2877d23277d20e2 /usr.sbin/bhyve
parent97e97b35c8417bc9679c023105f5f38512994440 (diff)
downloadFreeBSD-src-f9f9a7e61707f80f49be34d2c1af7490549580f9.zip
FreeBSD-src-f9f9a7e61707f80f49be34d2c1af7490549580f9.tar.gz
Parse the memory size parameter using expand_number() to allow specifying
the memory size more intuitively (e.g. 512M, 4G etc). Submitted by: rodrigc Reviewed by: grehan Approved by: re (blanket)
Diffstat (limited to 'usr.sbin/bhyve')
-rw-r--r--usr.sbin/bhyve/Makefile4
-rw-r--r--usr.sbin/bhyve/bhyverun.c6
2 files changed, 7 insertions, 3 deletions
diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile
index ff9425f..0644ed7 100644
--- a/usr.sbin/bhyve/Makefile
+++ b/usr.sbin/bhyve/Makefile
@@ -17,8 +17,8 @@ SRCS+= vmm_instruction_emul.c
NO_MAN=
-DPADD= ${LIBVMMAPI} ${LIBMD} ${LIBPTHREAD}
-LDADD= -lvmmapi -lmd -lpthread
+DPADD= ${LIBVMMAPI} ${LIBMD} ${LIBUTIL} ${LIBPTHREAD}
+LDADD= -lvmmapi -lmd -lutil -lpthread
WARNS?= 2
diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c
index 01a5d07..5359442 100644
--- a/usr.sbin/bhyve/bhyverun.c
+++ b/usr.sbin/bhyve/bhyverun.c
@@ -37,12 +37,14 @@ __FBSDID("$FreeBSD$");
#include <stdio.h>
#include <stdlib.h>
+#include <err.h>
#include <libgen.h>
#include <unistd.h>
#include <assert.h>
#include <errno.h>
#include <pthread.h>
#include <pthread_np.h>
+#include <sysexits.h>
#include <machine/vmm.h>
#include <vmmapi.h>
@@ -529,7 +531,9 @@ main(int argc, char *argv[])
else
break;
case 'm':
- memsize = strtoul(optarg, NULL, 0) * MB;
+ error = vm_parse_memsize(optarg, &memsize);
+ if (error)
+ errx(EX_USAGE, "invalid memsize '%s'", optarg);
break;
case 'H':
guest_vmexit_on_hlt = 1;
OpenPOWER on IntegriCloud