lkml.org 
[lkml]   [2005]   [Jul]   [1]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
DateFri, 1 Jul 2005 00:26:26 -0700
FromAndrew Morton <>
SubjectRe: [PATCH] device-mapper: dm-raid1: Limit bios to size of mirror region
Alasdair G Kergon <agk@redhat.com> wrote:
>
> Set the target's split_io field when building a dm-mirror device so
> incoming bios won't span the mirror's internal regions.  Without
> this, regions can be accessed while not holding correct locks and data
> corruption is possible.
> 
> Reported-By: "Zhao Qian" <zhaoqian@aaastor.com>
> From: Kevin Corry <kevcorry@us.ibm.com>
> Signed-Off-By: Alasdair G Kergon <agk@redhat.com>
> 
> --- diff/drivers/md/dm-raid1.c	2005-06-17 20:48:29.000000000 +0100
> +++ source/drivers/md/dm-raid1.c	2005-06-29 21:12:13.000000000 +0100
> @@ -1060,6 +1060,7 @@
>  	}
> 
>  	ti->private = ms;
> + 	ti->split_io = ms->rh->region_size;
> 
>  	r = kcopyd_client_create(DM_IO_PAGES, &ms->kcopyd_client);
>  	if (r) {

Ahem.

drivers/md/dm-raid1.c: In function `mirror_ctr':
drivers/md/dm-raid1.c:1072: invalid type argument of `->'

--- devel/drivers/md/dm-raid1.c~device-mapper-dm-raid1-limit-bios-to-size-of-mirror-region-fix	2005-07-01 00:25:26.000000000 -0700
+++ devel-akpm/drivers/md/dm-raid1.c	2005-07-01 00:25:26.000000000 -0700
@@ -1060,7 +1060,7 @@ static int mirror_ctr(struct dm_target *
 	}
 
 	ti->private = ms;
- 	ti->split_io = ms->rh->region_size;
+ 	ti->split_io = ms->rh.region_size;
 
 	r = kcopyd_client_create(DM_IO_PAGES, &ms->kcopyd_client);
 	if (r) {
How well tested was this?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-07-01 07:36    [from the cache]
©2003-2008