Re: [PATCH 2/2] xfsdump: fix DEBUGPARTIALS build

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Looks good to me indeed

Reviewed-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx>
On Tue, Oct 08, 2013 at 05:31:41PM -0500, Eric Sandeen wrote:
> the DEBUGPARTIALS debug code might have been helpful
> in this saga, so get it building again.
> 
> The primary build failure is that STREAM_MAX isn't
> defined for the num_partials[STREAM_MAX] array;
> the loop which uses that array iterates "drivecnt"
> times, so just allocate an array of that size.
> 
> Fix a few printf format warnings while we're at it.
> 
> Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
> ---
> 
> diff --git a/restore/content.c b/restore/content.c
> index cc49336..8ad0f00 100644
> --- a/restore/content.c
> +++ b/restore/content.c
> @@ -8857,22 +8857,23 @@ dump_partials(void)
>  	int i;
>  
>  	pi_lock();
> -	printf("\npartial_reg: count=%d\n", persp->a.parrestcnt);
> +	printf("\npartial_reg: count=%d\n", (int)persp->a.parrestcnt);
>  	if (persp->a.parrestcnt > 0) {
>  		for (i=0; i < partialmax; i++ ) {
>  			if (persp->a.parrest[i].is_ino > 0) {
>  				int j;
>  
>  				isptr = &persp->a.parrest[i];
> -				printf( "\tino=%lld ", isptr->is_ino);
> +				printf("\tino=%llu ",
> +				       (unsigned long long)isptr->is_ino);
>  				for (j=0, bsptr=isptr->is_bs;
>  				     j < drivecnt; 
>  				     j++, bsptr++)
>  				{
>  					if (bsptr->endoffset > 0) {
>  						printf("%d:%lld-%lld ",
> -						     j, bsptr->offset, 
> -						     bsptr->endoffset);
> +						   j, (long long)bsptr->offset,
> +						   (long long)bsptr->endoffset);
>  					} 
>  				}
>  				printf( "\n");
> @@ -8892,13 +8893,17 @@ dump_partials(void)
>  void
>  check_valid_partials(void)
>  {
> -        int num_partials[STREAM_MAX]; /* sum of partials for a given drive */
> +	int *num_partials; /* array for sum of partials for a given drive */
>  	partial_rest_t *isptr = NULL;
>  	bytespan_t *bsptr = NULL;
>  	int i;
>  
>  	/* zero the sums for each stream */
> -        memset(num_partials, 0, sizeof(num_partials));
> +	num_partials = calloc(drivecnt, sizeof(int));
> +	if (!num_partials) {
> +		perror("num_partials array allocation");
> +		return;
> +	}
>  
>  	pi_lock();
>  	if (persp->a.parrestcnt > 0) {
> @@ -8926,6 +8931,7 @@ check_valid_partials(void)
>  		}
>  	}
>  	pi_unlock();
> +	free(num_partials);
>  }
>  #endif
>  
> 
> 
> _______________________________________________
> xfs mailing list
> xfs@xxxxxxxxxxx
> http://oss.sgi.com/mailman/listinfo/xfs

-- 
Carlos

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs




[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux