1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-02-28 05:57:49 +03:00

Support snapshot status fraction.

This commit is contained in:
Alasdair Kergon 2003-04-15 13:20:16 +00:00
parent b4753c044f
commit 54752c2305
2 changed files with 11 additions and 2 deletions

View File

@ -10,7 +10,7 @@
#include "metadata.h"
#ifdef DEVMAPPER_SUPPORT
#include <libdevmapper.h>
# include <libdevmapper.h>
#endif
struct lvinfo {

View File

@ -809,6 +809,7 @@ int dev_manager_snapshot_percent(struct dev_manager *dm,
{
char *name, *type, *params;
unsigned long long start, length;
unsigned int numerator, denominator;
/* FIXME: Use #defines - & move allocations into _status_run ? */
uint32_t type_size = 32;
@ -851,7 +852,15 @@ int dev_manager_snapshot_percent(struct dev_manager *dm,
if (!params)
return 0;
return sscanf(params, "%f", percent);
if (index(params, '/')) {
if (sscanf(params, "%u/%u", &numerator, &denominator) == 2) {
*percent = (float) numerator *100 / denominator;
return 1;
}
} else if (sscanf(params, "%f", percent) == 1)
return 1;
return 0;
}
static struct dev_layer *_create_dev(struct dev_manager *dm, char *name,