[Box Backup-dev] release candidate

Ben Summers boxbackup-dev at fluffy.co.uk
Tue Jan 31 14:01:26 GMT 2006


On 31 Jan 2006, at 13:55, Martin Ebourne wrote:

> On Tue, 2006-01-31 at 13:17 +0000, Ben Summers wrote:
>> Hi all,
>>
>> I intend to do a release candidate today. Any objections?
>
> Sounds good to me.
>
> I've resurrected the ppc account I had and have run the tests on  
> there.
> As Jonathan previously reported there are a lot of raidfile failures.
> However, they only occur on the release tests - the debug tests all
> pass.
>
> It is in fact the same compiler bug I found last time I ported box to
> ppc. Only then gcc was approx. version 3.3.2 and now it's 4.0. This is
> Debian Linux on a ppc64 but compiling ppc32 bit code.
>
> Forcing RaidFileWrite.cpp to -O0 or applying this handy patch makes
> everything pass:
>
> Index: lib/raidfile/RaidFileWrite.cpp
> ===================================================================
> --- lib/raidfile/RaidFileWrite.cpp      (revision 354)
> +++ lib/raidfile/RaidFileWrite.cpp      (working copy)
> @@ -462,6 +462,7 @@
>                                                 ASSERT(sizeof 
> (RaidFileRead::FileSizeType) >= sizeof(off_t));
>                                                 int sizePos =  
> (blockSize/sizeof(unsigned int)) - 2;
>                                                  
> RaidFileRead::FileSizeType sw = box_hton64(writeFileStat.st_size);
> +                                               printf("%i\n", sw);
>                                                 unsigned int *psize  
> = (unsigned int *)(&sw);
>                                                 pparity[sizePos+0]  
> = pstripe1[sizePos+0] ^ psize[0];
>                                                 pparity[sizePos+1]  
> = pstripe1[sizePos+1] ^ psize[1];
>
> Any thoughts on we should do about this?

Add #ifdefed code for ppc?

static void PPCCompilerBugWorkaround(RaidFileRead::FileSizeType value)
{
}

and replacing your printf with PPCCompilerBugWorkaround(sw);

?

Obviously we wouldn't want it for all the other platforms.

Ben







More information about the Boxbackup-dev mailing list