Re: [Ext2-devel] [PATCH 1/2] ext2/3: Support 2^32-1 blocks(Kernel)

From: Takashi Sato
Date: Mon Mar 20 2006 - 05:13:14 EST


Hi,

I've just checked my i386 assembly language reference, and I don't see
any indication that the btsl, btrl, and btl instructions don't work if
the high bit is set on the bit number. Have you done tests showing
that these instructions do not work correctly for filesystem sizes >
2**31 blocks,

Of course I did and confirmed to get the segmentation fault
at those instructions.

or have references showing that these instructions
interpret the bit number as a signed integer?

I got the developer's manual from the following site.
ftp://download.intel.com/design/Pentium4/manuals/25366618.pdf
There is the description of "See also: Bit(BitBase, BitOffset) on page 3-10"
on the explanation of "bts" at page 3-82.

"Table 3-2. Range of Bit Positions Specified by Bit Offset Operands"
at page 3-10 says that the register bit offset is restricted
from -2^31 to 2^31 - 1.

--
Takashi Sato -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/