[lttng-dev] [PATCH] lttng-tools lttng commands calibrate.c : Return values of the cmd_calibrate() chain of functions

Thibault, Daniel Daniel.Thibault at drdc-rddc.gc.ca
Thu Jan 26 16:10:56 EST 2012


Improve lttng/commands/calibrate.c usage() printout.
Document and enforce the expected return values for the cmd_calibrate() chain of functions.
This includes a couple of documentation lines in lib/lttng-ctl/lttng-ctl.c.
------------------------------
>From 4c9089ec185d72c9e457dc6656323ae0e2939ae3 Thu, 26 Jan 2012 16:05:04 -0500
From: Daniel U. Thibault <daniel.thibault at drdc-rddc.gc.ca>
Date: Thu, 26 Jan 2012 16:04:41 -0500
Subject: [PATCH] lttng-tools lttng commands calibrate.c : Return values of the cmd_calibrate() chain of functions

diff --git a/src/bin/lttng/commands/calibrate.c b/src/bin/lttng/commands/calibrate.c
index 81eadbf..1af1807 100644
--- a/src/bin/lttng/commands/calibrate.c
+++ b/src/bin/lttng/commands/calibrate.c
@@ -89,14 +89,14 @@
 	fprintf(ofp, "\n");
 	fprintf(ofp, "  -h, --help               Show this help\n");
 	fprintf(ofp, "      --list-options       Simple listing of options\n");
-	fprintf(ofp, "  -k, --kernel             Apply for the kernel tracer\n");
+	fprintf(ofp, "  -k, --kernel             Apply to the kernel tracer\n");
 #if 0
-	fprintf(ofp, "  -u, --userspace [CMD]    Apply for the user-space tracer\n");
-	fprintf(ofp, "                           If no CMD, the domain used is UST global\n");
-	fprintf(ofp, "                           or else the domain is UST EXEC_NAME\n");
+	fprintf(ofp, "  -u, --userspace [CMD]    Apply to the user-space tracer (domain: UST\n");
+	fprintf(ofp, "                           EXEC_NAME). If no CMD, the domain is UST globa.\n");
+	fprintf(ofp, "                           (-k preempts -u)\n");
 	fprintf(ofp, "  -p, --pid PID            If -u, apply to specific PID (domain: UST PID)\n");
 #else
-	fprintf(ofp, "  -u, --userspace          Apply for the user-space tracer\n");
+	fprintf(ofp, "  -u, --userspace          Apply to the user-space tracer\n");
 #endif
 	fprintf(ofp, "\n");
 	fprintf(ofp, "Calibrate options:\n");
@@ -120,6 +120,7 @@
  *  calibrate_lttng
  *
  *  Calibrate LTTng.
+ *  Returns one of the CMD_* result constants.
  */
 static int calibrate_lttng(void)
 {
@@ -140,7 +141,7 @@
 
 	handle = lttng_create_handle(NULL, &dom);
 	if (handle == NULL) {
-		ret = -1;
+		ret = CMD_ERROR;
 		goto error;
 	}
 
@@ -154,9 +155,17 @@
 	case LTTNG_EVENT_FUNCTION:
 		DBG("Calibrating kernel functions");
 		calibrate.type = LTTNG_CALIBRATE_FUNCTION;
+		/*
+		 * lttng_calibrate() returns the size of
+		 * the returned session payload data
+		 * or a negative error code.
+		 */
 		ret = lttng_calibrate(handle, &calibrate);
 		if (ret < 0) {
+			ret = CMD_ERROR;
 			goto error;
+		} else {
+			ret = CMD_SUCCESS;
 		}
 		MSG("%s calibration done", opt_kernel ? "Kernel" : "UST");
 		break;
@@ -181,6 +190,7 @@
  *  cmd_calibrate
  *
  *  Calibrate LTTng tracer.
+ *  Returns one of the CMD_* result constants.
  */
 int cmd_calibrate(int argc, const char **argv)
 {
@@ -196,7 +206,7 @@
 	while ((opt = poptGetNextOpt(pc)) != -1) {
 		switch (opt) {
 		case OPT_HELP:
-			usage(stderr);
+			usage(stdout);
 			ret = CMD_SUCCESS;
 			goto end;
 		case OPT_TRACEPOINT:
diff --git a/src/lib/lttng-ctl/lttng-ctl.c b/src/lib/lttng-ctl/lttng-ctl.c
index b7fc781..e7ebab5 100644
--- a/src/lib/lttng-ctl/lttng-ctl.c
+++ b/src/lib/lttng-ctl/lttng-ctl.c
@@ -302,7 +302,7 @@
 /*
  * Ask the session daemon a specific command and put the data into buf.
  *
- * Return size of data (only payload, not header).
+ * Return size of data (only payload, not header) or a negative error code.
  */
 static int ask_sessiond(struct lttcomm_session_msg *lsm, void **buf)
 {
@@ -808,6 +808,7 @@
 
 /*
  *  lttng_calibrate
+ *  Returns size of returned session payload data or a negative error code.
  */
 int lttng_calibrate(struct lttng_handle *handle,
 		struct lttng_calibrate *calibrate)
------------------------------

Daniel U. Thibault
R & D pour la défense Canada - Valcartier (RDDC Valcartier) / Defence R&D Canada - Valcartier (DRDC Valcartier)
Système de systèmes (SdS) / System of Systems (SoS)
Solutions informatiques et expérimentations (SIE) / Computing Solutions and Experimentations (CSE)
2459 Boul. Pie XI Nord
Québec, QC  G3J 1X5
CANADA
Vox : (418) 844-4000 x4245
Fax : (418) 844-4538
NAC: 918V QSDJ
Gouvernement du Canada / Government of Canada
<http://www.valcartier.drdc-rddc.gc.ca/>



More information about the lttng-dev mailing list