Cleanup profile support

This is closer to where it needs to end up. No ext_options, just
include profile options in the general option table (and mark them
private for that profile).

Profile options are only available after loading a specific profile,
so there should be less confusion.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/init.c b/init.c
index c0ce431..acebb7d 100644
--- a/init.c
+++ b/init.c
@@ -39,6 +39,7 @@
 FILE *f_out = NULL;
 FILE *f_err = NULL;
 char *job_section = NULL;
+char *exec_profile = NULL;
 
 int write_bw_log = 0;
 int read_only = 0;
@@ -1114,8 +1115,7 @@
 			job_section = strdup(optarg);
 			break;
 		case 'p':
-			if (load_profile(optarg))
-				do_exit++;
+			exec_profile = strdup(optarg);
 			break;
 		case FIO_GETOPT_JOB: {
 			const char *opt = l_opts[lidx].name;
@@ -1204,6 +1204,8 @@
 	if (!thread_number) {
 		if (dump_cmdline)
 			return 0;
+		if (exec_profile)
+			return 0;
 
 		log_err("No jobs defined(s)\n\n");
 		usage(argv[0]);