mirror of
git://sourceware.org/git/lvm2.git
synced 2025-01-02 01:18:26 +03:00
Use same signed numbers
Keep unsigned aritmetic. TODO: we should probably switch dm_split_words() to return unsigned numbers. (minor API libdm change mostly compatible)
This commit is contained in:
parent
219e040062
commit
c817e60796
@ -1,5 +1,6 @@
|
|||||||
Version 2.02.94 -
|
Version 2.02.94 -
|
||||||
====================================
|
====================================
|
||||||
|
Use same signed numbers in _mirrored_transient_status().
|
||||||
Integrate client-side lvmetad into build.
|
Integrate client-side lvmetad into build.
|
||||||
|
|
||||||
Version 2.02.93 - 23rd February 2012
|
Version 2.02.93 - 23rd February 2012
|
||||||
|
@ -226,14 +226,14 @@ static int _mirrored_target_percent(void **target_state,
|
|||||||
|
|
||||||
static int _mirrored_transient_status(struct lv_segment *seg, char *params)
|
static int _mirrored_transient_status(struct lv_segment *seg, char *params)
|
||||||
{
|
{
|
||||||
int i, j;
|
unsigned i, j;
|
||||||
struct logical_volume *lv = seg->lv;
|
struct logical_volume *lv = seg->lv;
|
||||||
struct lvinfo info;
|
struct lvinfo info;
|
||||||
char *p = NULL;
|
char *p = NULL;
|
||||||
char **args, **log_args;
|
char **args, **log_args;
|
||||||
struct logical_volume **images;
|
struct logical_volume **images;
|
||||||
struct logical_volume *log;
|
struct logical_volume *log;
|
||||||
int num_devs, log_argc;
|
unsigned num_devs, log_argc;
|
||||||
int failed = 0;
|
int failed = 0;
|
||||||
char *status;
|
char *status;
|
||||||
|
|
||||||
@ -243,12 +243,12 @@ static int _mirrored_transient_status(struct lv_segment *seg, char *params)
|
|||||||
if (!dm_split_words(params, 1, 0, &p))
|
if (!dm_split_words(params, 1, 0, &p))
|
||||||
return_0;
|
return_0;
|
||||||
|
|
||||||
if (!(num_devs = atoi(p)))
|
if (!(num_devs = (unsigned) atoi(p)))
|
||||||
return_0;
|
return_0;
|
||||||
|
|
||||||
p += strlen(p) + 1;
|
p += strlen(p) + 1;
|
||||||
|
|
||||||
if (num_devs > DEFAULT_MIRROR_MAX_IMAGES || num_devs < 0) {
|
if (num_devs > DEFAULT_MIRROR_MAX_IMAGES) {
|
||||||
log_error("Unexpectedly many (%d) mirror images in %s.",
|
log_error("Unexpectedly many (%d) mirror images in %s.",
|
||||||
num_devs, lv->name);
|
num_devs, lv->name);
|
||||||
return 0;
|
return 0;
|
||||||
@ -257,12 +257,13 @@ static int _mirrored_transient_status(struct lv_segment *seg, char *params)
|
|||||||
args = alloca((num_devs + 5) * sizeof(char *));
|
args = alloca((num_devs + 5) * sizeof(char *));
|
||||||
images = alloca(num_devs * sizeof(struct logical_volume *));
|
images = alloca(num_devs * sizeof(struct logical_volume *));
|
||||||
|
|
||||||
if (dm_split_words(p, num_devs + 4, 0, args) < num_devs + 4)
|
/* FIXME: dm_split_words() should return unsigned */
|
||||||
|
if ((unsigned)dm_split_words(p, num_devs + 4, 0, args) < num_devs + 4)
|
||||||
return_0;
|
return_0;
|
||||||
|
|
||||||
log_argc = atoi(args[3 + num_devs]);
|
log_argc = (unsigned) atoi(args[3 + num_devs]);
|
||||||
|
|
||||||
if (log_argc > 16 || log_argc < 0) {
|
if (log_argc > 16) {
|
||||||
log_error("Unexpectedly many (%d) log arguments in %s.",
|
log_error("Unexpectedly many (%d) log arguments in %s.",
|
||||||
log_argc, lv->name);
|
log_argc, lv->name);
|
||||||
return 0;
|
return 0;
|
||||||
@ -270,8 +271,8 @@ static int _mirrored_transient_status(struct lv_segment *seg, char *params)
|
|||||||
|
|
||||||
log_args = alloca(log_argc * sizeof(char *));
|
log_args = alloca(log_argc * sizeof(char *));
|
||||||
|
|
||||||
if (dm_split_words(args[3 + num_devs] + strlen(args[3 + num_devs]) + 1,
|
if ((unsigned)dm_split_words(args[3 + num_devs] + strlen(args[3 + num_devs]) + 1,
|
||||||
log_argc, 0, log_args) < log_argc)
|
log_argc, 0, log_args) < log_argc)
|
||||||
return_0;
|
return_0;
|
||||||
|
|
||||||
if (num_devs != seg->area_count) {
|
if (num_devs != seg->area_count) {
|
||||||
|
Loading…
Reference in New Issue
Block a user