Commit 6680073d authored by Kiyoshi Ueda's avatar Kiyoshi Ueda Committed by Alasdair G Kergon

dm mpath: remove is_active from struct dm_path

This patch moves 'is_active' from struct dm_path to struct pgpath
as it does not need exporting.
Signed-off-by: default avatarKiyoshi Ueda <k-ueda@ct.jp.nec.com>
Signed-off-by: default avatarJun'ichi Nomura <j-nomura@ce.jp.nec.com>
Signed-off-by: default avatarAlasdair G Kergon <agk@redhat.com>
parent 01460f35
...@@ -30,6 +30,7 @@ struct pgpath { ...@@ -30,6 +30,7 @@ struct pgpath {
struct list_head list; struct list_head list;
struct priority_group *pg; /* Owning PG */ struct priority_group *pg; /* Owning PG */
unsigned is_active; /* Path status */
unsigned fail_count; /* Cumulative failure count */ unsigned fail_count; /* Cumulative failure count */
struct dm_path path; struct dm_path path;
...@@ -123,7 +124,7 @@ static struct pgpath *alloc_pgpath(void) ...@@ -123,7 +124,7 @@ static struct pgpath *alloc_pgpath(void)
struct pgpath *pgpath = kzalloc(sizeof(*pgpath), GFP_KERNEL); struct pgpath *pgpath = kzalloc(sizeof(*pgpath), GFP_KERNEL);
if (pgpath) if (pgpath)
pgpath->path.is_active = 1; pgpath->is_active = 1;
return pgpath; return pgpath;
} }
...@@ -854,13 +855,13 @@ static int fail_path(struct pgpath *pgpath) ...@@ -854,13 +855,13 @@ static int fail_path(struct pgpath *pgpath)
spin_lock_irqsave(&m->lock, flags); spin_lock_irqsave(&m->lock, flags);
if (!pgpath->path.is_active) if (!pgpath->is_active)
goto out; goto out;
DMWARN("Failing path %s.", pgpath->path.dev->name); DMWARN("Failing path %s.", pgpath->path.dev->name);
pgpath->pg->ps.type->fail_path(&pgpath->pg->ps, &pgpath->path); pgpath->pg->ps.type->fail_path(&pgpath->pg->ps, &pgpath->path);
pgpath->path.is_active = 0; pgpath->is_active = 0;
pgpath->fail_count++; pgpath->fail_count++;
m->nr_valid_paths--; m->nr_valid_paths--;
...@@ -890,7 +891,7 @@ static int reinstate_path(struct pgpath *pgpath) ...@@ -890,7 +891,7 @@ static int reinstate_path(struct pgpath *pgpath)
spin_lock_irqsave(&m->lock, flags); spin_lock_irqsave(&m->lock, flags);
if (pgpath->path.is_active) if (pgpath->is_active)
goto out; goto out;
if (!pgpath->pg->ps.type->reinstate_path) { if (!pgpath->pg->ps.type->reinstate_path) {
...@@ -904,7 +905,7 @@ static int reinstate_path(struct pgpath *pgpath) ...@@ -904,7 +905,7 @@ static int reinstate_path(struct pgpath *pgpath)
if (r) if (r)
goto out; goto out;
pgpath->path.is_active = 1; pgpath->is_active = 1;
m->current_pgpath = NULL; m->current_pgpath = NULL;
if (!m->nr_valid_paths++ && m->queue_size) if (!m->nr_valid_paths++ && m->queue_size)
...@@ -1292,7 +1293,7 @@ static int multipath_status(struct dm_target *ti, status_type_t type, ...@@ -1292,7 +1293,7 @@ static int multipath_status(struct dm_target *ti, status_type_t type,
list_for_each_entry(p, &pg->pgpaths, list) { list_for_each_entry(p, &pg->pgpaths, list) {
DMEMIT("%s %s %u ", p->path.dev->name, DMEMIT("%s %s %u ", p->path.dev->name,
p->path.is_active ? "A" : "F", p->is_active ? "A" : "F",
p->fail_count); p->fail_count);
if (pg->ps.type->status) if (pg->ps.type->status)
sz += pg->ps.type->status(&pg->ps, sz += pg->ps.type->status(&pg->ps,
......
...@@ -13,8 +13,6 @@ struct dm_dev; ...@@ -13,8 +13,6 @@ struct dm_dev;
struct dm_path { struct dm_path {
struct dm_dev *dev; /* Read-only */ struct dm_dev *dev; /* Read-only */
unsigned is_active; /* Read-only */
void *pscontext; /* For path-selector use */ void *pscontext; /* For path-selector use */
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment