const char *argv15[] = {prgname, "--file-prefix=intr",
"--vfio-intr=invalid"};
+ /* With process type as auto-detect */
+ const char * const argv16[] = {prgname, "--file-prefix=auto",
+ "--proc-type=auto"};
+
+ /* With process type as auto-detect with no-shconf */
+ const char * const argv17[] = {prgname, "--proc-type=auto",
+ no_shconf, nosh_prefix, no_huge};
+
+ /* With process type as --create-uio-dev flag */
+ const char * const argv18[] = {prgname, "--file-prefix=uiodev",
+ "--create-uio-dev"};
+
/* run all tests also applicable to FreeBSD first */
if (launch_proc(argv0) == 0) {
"--vfio-intr invalid parameter\n");
return -1;
}
+ if (launch_proc(argv16) != 0) {
+ printf("Error - process did not run ok with "
+ "--proc-type as auto parameter\n");
+ return -1;
+ }
+ if (launch_proc(argv17) != 0) {
+ printf("Error - process did not run ok with "
+ "--proc-type and --no-shconf parameter\n");
+ return -1;
+ }
+ if (launch_proc(argv18) != 0) {
+ printf("Error - process did not run ok with "
+ "--create-uio-dev parameter\n");
+ return -1;
+ }
+
return 0;
}
const char *argv4[] = {prgname, "-m",
DEFAULT_MEM_SIZE, "--file-prefix=" memtest2 };
+ /* primary process with --in-memory mode */
+ const char * const argv5[] = {prgname, "-m",
+ DEFAULT_MEM_SIZE, "--in-memory" };
+
+ /* primary process with memtest1 and --in-memory mode */
+ const char * const argv6[] = {prgname, "-m",
+ DEFAULT_MEM_SIZE, "--in-memory",
+ "--file-prefix=" memtest1 };
+
+ /* primary process with parent file-prefix and --in-memory mode */
+ const char * const argv7[] = {prgname, "-m",
+ DEFAULT_MEM_SIZE, "--in-memory", "--file-prefix", prefix };
+
+ /* primary process with memtest1 and --single-file-segments mode */
+ const char * const argv8[] = {prgname, "-m",
+ DEFAULT_MEM_SIZE, "--single-file-segments",
+ "--file-prefix=" memtest1 };
+
/* check if files for current prefix are present */
if (process_hugefiles(prefix, HUGEPAGE_CHECK_EXISTS) != 1) {
printf("Error - hugepage files for %s were not created!\n", prefix);
return -1;
}
+ /* this process will run in --in-memory mode, so it should not leave any
+ * hugepage files behind.
+ */
+
+ /* test case to check eal-options with --in-memory mode */
+ if (launch_proc(argv5) != 0) {
+ printf("Error - failed to run with --in-memory mode\n");
+ return -1;
+ }
+
+ /*test case to check eal-options with --in-memory mode with
+ * custom file-prefix.
+ */
+ if (launch_proc(argv6) != 0) {
+ printf("Error - failed to run with --in-memory mode\n");
+ return -1;
+ }
+
+ /* check if hugefiles for memtest1 are present */
+ if (process_hugefiles(memtest1, HUGEPAGE_CHECK_EXISTS) != 0) {
+ printf("Error - hugepage files for %s were created and not deleted!\n",
+ memtest1);
+ return -1;
+ }
+
+ /* test case to check eal-options with --in-memory mode with
+ * parent file-prefix.
+ */
+ if (launch_proc(argv7) != 0) {
+ printf("Error - failed to run with --file-prefix=%s\n", prefix);
+ return -1;
+ }
+
+ /* this process will run in --single-file-segments mode,
+ * so it should not leave any hugepage files behind.
+ */
+ if (launch_proc(argv8) != 0) {
+ printf("Error - failed to run with --single-file-segments mode\n");
+ return -1;
+ }
+
+ /* check if hugefiles for memtest1 are present */
+ if (process_hugefiles(memtest1, HUGEPAGE_CHECK_EXISTS) != 0) {
+ printf("Error - hugepage files for %s were not deleted!\n",
+ memtest1);
+ return -1;
+ }
+
return 0;
}