On Fri, 2010-07-23 at 09:21 +0100, Keir Fraser wrote:
> On 23/07/2010 09:07, "Gianni Tedesco (3P)" <gianni.tedesco@xxxxxxxxxx>
> wrote:
>
> >> For say a 17GB drive sizeinmb=17000 which can be represented with fewer
> >> than
> >> 16 bits. I don't see how the code as it is will ever print the wrong thing,
> >> except for drives bigger than 64TB!
> >
> > Actually you are right then wrong, the patch is mis-titled, it's 64GB.
> > (in fact 65,535 MB).
> >
> >> Also I'm not sure but I think the
> >> integer size here may be 16 bits, and the %u format specifier would only
> >> print 16-bit values in that case anyway.
> >
> > I tested it and it works as advertised (modulo 16 -> 64)....
>
> 64GB == 65536MB > 1UL<<16, hence we should print the size in GB, and shift
> right 10 before casting. Hence should still print correctly. Is this another
> example where the bcc compiler is broken?
Argh, ignore me, you are right - I was mindlessly sending off my
patch-queue against xenserver in which there are no brackets on the
bit-shift! :)
Sorry for the noise
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|