s = (ulong *)src;
d = (ulong *)dest;
blocks = n >> _WSHIFT;
- n -= (blocks << _WSHIFT);
+ n &= lsize - 1;
while (blocks) {
*d = *s;
static const char * const U = "BKMGTPEZY";
static char size_buf[12]; /* Buffer to hold human readable size */
static int i;
- static off_t tmp;
static long double rem;
static const double div_2_pow_10 = 1.0 / 1024.0;
rem = 0;
while (size > 1024) {
- tmp = size;
+ rem = size & (0x3FF); /* 1024 - 1 = 0x3FF */
size >>= 10;
- rem = tmp - (size << 10);
++i;
}