[PATCH] Promise FastTrack metadata detection

Heinz Mauelshagen mauelshagen at redhat.com
Thu Sep 13 11:05:37 UTC 2007


On Wed, Sep 12, 2007 at 03:27:20PM +0200, Matthias Koenig wrote:

Hi Matthias,

can I have the metadata samples created with your patch applied
via "dmraid -rd" (tar/brzip2) ?

We got to do more than support recovery, ie. the mapping needs to work around
the strange metadata location.

Heinz

w
> Index: 1.0.0.rc14/lib/format/ataraid/pdc.c
> ===================================================================
> --- 1.0.0.rc14.orig/lib/format/ataraid/pdc.c
> +++ 1.0.0.rc14/lib/format/ataraid/pdc.c
> @@ -155,6 +155,21 @@ static void *pdc_read_metadata(struct li
>  			}
>  		}
>  
> +		/* Some pdc card detect only PDC_MAX_SECTOR sectors, even
> +		 * if the disk is bigger, this prevents dmraid from discovering
> +		 * the metadata. This quirk searches for metadata at the
> +		 * sector PDC_MAX_SECTOR
> +		 */
> +		if (di->sectors >= PDC_MAX_SECTOR) {
> +			if (read_file(lc, handler, di->path, ret, sizeof(*ret),
> +				      PDC_MAX_SECTOR << 9) &&
> +			    !strncmp((const char*) ret->promise_id, PDC_MAGIC,
> +				     PDC_ID_LENGTH)) {
> +				info->u32 = PDC_MAX_SECTOR;
> +				return (void*) ret;
> +			}
> +		}
> +
>  		dbg_free(ret);
>  	}
>  
> Index: 1.0.0.rc14/lib/format/ataraid/pdc.h
> ===================================================================
> --- 1.0.0.rc14.orig/lib/format/ataraid/pdc.h
> +++ 1.0.0.rc14/lib/format/ataraid/pdc.h
> @@ -16,6 +16,9 @@
>  #define PDC_CONFIGOFFSETS	63,255,256,16,399,735
>  #define	PDC_DATAOFFSET 0
>  
> +/* maximum device size (sectors) which can be detected by some pdc card */
> +#define PDC_MAX_SECTOR 268435377UL
> +
>  /* Ondisk metadata for Promise Fastrack */
>  struct pdc {
>  #define PDC_ID_LENGTH	24

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

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 Ataraid-list mailing list