dm exception store: really fix type lookup
Fix exception store name handling.
We need to reference exception store by zero terminated string.
Fixes regression introduced in commit f6bd4eb73c
Cc: Yi Yang <yi.y.yang@intel.com>
Cc: Jonathan Brassow <jbrassow@redhat.com>
Cc: stable@kernel.org
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Milan Broz <mbroz@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
This commit is contained in:
parent
5a4f13fad1
commit
874d2f61d3
|
@ -195,7 +195,7 @@ int dm_exception_store_create(struct dm_target *ti, int argc, char **argv,
|
|||
struct dm_exception_store **store)
|
||||
{
|
||||
int r = 0;
|
||||
struct dm_exception_store_type *type;
|
||||
struct dm_exception_store_type *type = NULL;
|
||||
struct dm_exception_store *tmp_store;
|
||||
char persistent;
|
||||
|
||||
|
@ -211,12 +211,15 @@ int dm_exception_store_create(struct dm_target *ti, int argc, char **argv,
|
|||
}
|
||||
|
||||
persistent = toupper(*argv[1]);
|
||||
if (persistent != 'P' && persistent != 'N') {
|
||||
if (persistent == 'P')
|
||||
type = get_type("P");
|
||||
else if (persistent == 'N')
|
||||
type = get_type("N");
|
||||
else {
|
||||
ti->error = "Persistent flag is not P or N";
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
type = get_type(&persistent);
|
||||
if (!type) {
|
||||
ti->error = "Exception store type not recognised";
|
||||
r = -EINVAL;
|
||||
|
|
Loading…
Reference in New Issue