dm snapshot: use DMEMIT macro for status
authorJonathan Brassow <jbrassow@redhat.com>
Thu, 2 Apr 2009 18:55:34 +0000 (19:55 +0100)
committerAlasdair G Kergon <agk@redhat.com>
Thu, 2 Apr 2009 18:55:34 +0000 (19:55 +0100)
Use DMEMIT in place of snprintf.  This makes it easier later when
other modules are helping to populate our status output.

Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
drivers/md/dm-snap.c

index bb28f97..fcb1ac1 100644 (file)
@@ -1214,24 +1214,25 @@ static void snapshot_resume(struct dm_target *ti)
 static int snapshot_status(struct dm_target *ti, status_type_t type,
                           char *result, unsigned int maxlen)
 {
+       unsigned sz = 0;
        struct dm_snapshot *snap = ti->private;
 
        switch (type) {
        case STATUSTYPE_INFO:
                if (!snap->valid)
-                       snprintf(result, maxlen, "Invalid");
+                       DMEMIT("Invalid");
                else {
                        if (snap->store->type->fraction_full) {
                                sector_t numerator, denominator;
                                snap->store->type->fraction_full(snap->store,
                                                                 &numerator,
                                                                 &denominator);
-                               snprintf(result, maxlen, "%llu/%llu",
-                                       (unsigned long long)numerator,
-                                       (unsigned long long)denominator);
+                               DMEMIT("%llu/%llu",
+                                      (unsigned long long)numerator,
+                                      (unsigned long long)denominator);
                        }
                        else
-                               snprintf(result, maxlen, "Unknown");
+                               DMEMIT("Unknown");
                }
                break;
 
@@ -1241,10 +1242,10 @@ static int snapshot_status(struct dm_target *ti, status_type_t type,
                 * to make private copies if the output is to
                 * make sense.
                 */
-               snprintf(result, maxlen, "%s %s %s %llu",
-                        snap->origin->name, snap->store->cow->name,
-                        snap->store->type->name,
-                        (unsigned long long)snap->store->chunk_size);
+               DMEMIT("%s", snap->origin->name);
+               DMEMIT(" %s %s %llu", snap->store->cow->name,
+                      snap->store->type->name,
+                      (unsigned long long)snap->store->chunk_size);
                break;
        }