Snapshot warning if there are no events in one of the domains
authorJérémie Galarneau <jeremie.galarneau@efficios.com>
Mon, 16 May 2016 05:20:47 +0000 (01:20 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 20 May 2016 20:35:16 +0000 (16:35 -0400)
Remove the "no data" check from the UST snapshot code since

1) It would report that no data was recorded in the snapshot even
   if the kernel tracer had recorded events,
2) The kernel consumer does not seem to report such a condition,
   making it hard to perform the check without modifying the
   consumer.

The consumer interfaces could be modified to reliably provide
this information in the future.

However, this warning is not provided in the other tracing
modes, making its usefulness questionable. An empty snapshot is
still a valid trace and users should not always expect a trace
to contain events. Moreover, "warning" that no data was produced
implies an error may have occured and is probably as confusing
as opening an empty trace to the average user.

Fixes #1012

Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
src/bin/lttng-sessiond/cmd.c
src/bin/lttng-sessiond/ust-app.c

index 24e6d0c003c2194b6ab657e58651267ae6f44ad1..6779bae671246da67264dba01bfd93fd2b80db07 100644 (file)
@@ -3027,9 +3027,6 @@ static int record_ust_snapshot(struct ltt_ust_session *usess,
                case EINVAL:
                        ret = LTTNG_ERR_INVALID;
                        break;
-               case ENODATA:
-                       ret = LTTNG_ERR_SNAPSHOT_NODATA;
-                       break;
                default:
                        ret = LTTNG_ERR_SNAPSHOT_FAIL;
                        break;
index ae85bdb80e0476c3b77ecd2c7f45208050e81019..e0983b0417ed57a2a9d375c1d5d244fb94ccb6c5 100644 (file)
@@ -5318,7 +5318,6 @@ int ust_app_snapshot_record(struct ltt_ust_session *usess,
                uint64_t nb_packets_per_stream)
 {
        int ret = 0;
-       unsigned int snapshot_done = 0;
        struct lttng_ht_iter iter;
        struct ust_app *app;
        char pathname[PATH_MAX];
@@ -5370,7 +5369,6 @@ int ust_app_snapshot_record(struct ltt_ust_session *usess,
                        if (ret < 0) {
                                goto error;
                        }
-                       snapshot_done = 1;
                }
                break;
        }
@@ -5423,7 +5421,6 @@ int ust_app_snapshot_record(struct ltt_ust_session *usess,
                        if (ret < 0) {
                                goto error;
                        }
-                       snapshot_done = 1;
                }
                break;
        }
@@ -5432,15 +5429,6 @@ int ust_app_snapshot_record(struct ltt_ust_session *usess,
                break;
        }
 
-       if (!snapshot_done) {
-               /*
-                * If no snapshot was made and we are not in the error path, this means
-                * that there are no buffers thus no (prior) application to snapshot
-                * data from so we have simply NO data.
-                */
-               ret = -ENODATA;
-       }
-
 error:
        rcu_read_unlock();
        return ret;
This page took 0.029183 seconds and 4 git commands to generate.