[dm-devel] Re: Maximum chunk size in dm-raid4-5.c

Heinz Mauelshagen mauelshagen at redhat.com
Fri Jun 2 06:07:56 UTC 2006


Darrick,

this is to limit the size of the stripe cache, because the code allocates
"RAID devices * chunk_size memory * stripes". IOW: the chunk size defines the
io size.

Right now I'm working on seperating the chunk size from the io size
(i.e. the amount of memory allocated per device), which will give us
a way to optimize memory consumption for large chunk sizes and hence
the ability to have very large chunk sizes without stripe cache memory
preasure.

Regards,
Heinz

On Thu, Jun 01, 2006 at 05:45:42PM -0700, Darrick J. Wong wrote:
> Hi,
> 
> Is there a particular reason why CHUNK_SIZE_MAX is set to 512 sectors in
> the dm raid4/5 module?  I have a fakeraid controller that can create
> rather huge (1MB!) RAID5 stripes that this module rejects.  I set it to
> 2048 and as far as I can tell there haven't been any adverse stability
> effects, though I suspect that gigantic stripes do wonders for disk
> throughput. :P
> 
> Attached is a patch to increase it to 2048 sectors.  Please apply if
> it's ok.
> 
> --D
> 
> Signed-off-by: Darrick J. Wong <djwong at us.ibm.com>
> --- a/drivers/md/dm-raid4-5.c	2006-06-01 17:42:27.000000000 -0700
> +++ b/drivers/md/dm-raid4-5.c	2006-06-01 17:42:32.000000000 -0700
> @@ -70,7 +70,7 @@
>  #define	CHUNK_SIZE		64
> 
>  /* Maximum setable chunk size in sectors */
> -#define	CHUNK_SIZE_MAX		512
> +#define	CHUNK_SIZE_MAX		2048
> 
>  /* Recover chunk size in sectors */
>  #define	RECOVER_CHUNK_SIZE	CHUNK_SIZE_MAX
> @@ -3114,7 +3114,7 @@ static int raid_ctr(struct dm_target *ti
>  		    chunk_size > CHUNK_SIZE_MAX ||
>  		    chunk_size & (chunk_size - 1))
>  			TI_ERR("Invalid chunk size; must "
> -			       "be 2^^n and less equal 512");
> +			       "be 2^^n and less equal 2048");
> 
>  		/*
>  		 * In case we've got 2 or more variable raid parameters,

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Heinz Mauelshagen                                 Red Hat GmbH
Consulting Development Engineer                   Am Sonnenhang 11
Storage Development                               56242 Marienrachdorf
                                                  Germany
Mauelshagen at RedHat.com                            PHONE +49  171 7803392
                                                  FAX   +49 2626 924446
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-




More information about the dm-devel mailing list