[dm-devel] Patchset 2.4.20-dm-8
Kevin Corry
corryk at us.ibm.com
Thu Feb 13 10:34:02 UTC 2003
On Thursday 13 February 2003 05:32, Joe Thornber wrote:
>
> Changes since 2.4.20-dm-7
> -------------------------
>
> Revision 41:
> Hook the io before we call the targets map function, this allows us to
> implement little things like the zero target.
Wahoo! :) Mike Tran and I noticed this yesterday, and were about to send you
a nearly identical patch. Looks like you beat us to it.
> Revision 42:
> Silly mistake in error path when an unknown target type is requested.
--- diff/drivers/md/dm-table.c 2003-01-10 10:20:07.000000000 +0000
+++ source/drivers/md/dm-table.c 2003-02-13 10:42:19.000000000 +0000
@@ -523,7 +523,7 @@
tgt->type = dm_get_target_type(type);
if (!tgt->type) {
tgt->error = "unknown target type";
- goto bad;
+ return r;
}
tgt->table = t;
Should this patch actually be "return -EINVAL;" (or something similar)? Just
above this, the call to check_space() sets r to 0, so this patch is going to
return success to the caller of dm_table_add_target() in this error path.
Along the same lines, the error path for the call to adjoin() will also end
up returning success from this function.
Patch 5 in the new 2.5.60 patchset has the same issue. The patch below ought
to apply to both 2.4 and 2.5.
--
Kevin Corry
corryk at us.ibm.com
http://evms.sourceforge.net/
--- linux-2.4.20a/drivers/md/dm-table.c 2003/02/13 16:18:01
+++ linux-2.4.20b/drivers/md/dm-table.c 2003/02/13 16:19:39
@@ -523,7 +523,7 @@
tgt->type = dm_get_target_type(type);
if (!tgt->type) {
tgt->error = "unknown target type";
- return r;
+ return -EINVAL;
}
tgt->table = t;
@@ -536,6 +536,7 @@
*/
if (!adjoin(t, tgt)) {
tgt->error = "Gap in table";
+ r = -EINVAL;
goto bad;
}
More information about the dm-devel
mailing list