'Persistent' flag checking in the snapshot target constructor had a coding error which meant that it was always invalid. --- diff/drivers/md/dm-snapshot.c 2002-12-04 15:35:23.000000000 +0000 +++ source/drivers/md/dm-snapshot.c 2003-01-10 10:47:54.000000000 +0000 @@ -415,7 +415,7 @@ cow_path = argv[1]; persistent = toupper(*argv[2]); - if (persistent != 'P' || persistent != 'N') { + if (persistent != 'P' && persistent != 'N') { ti->error = "Persistent flag is not P or N"; r = -EINVAL; goto bad;