On Tue, 2007-10-16 at 20:32 +0800, Yan Zheng wrote:> Hello
>
> Some xxx_extent_buffer functions have codes like:
> --
> offset = dst_offset & ((unsigned long)PAGE_CACHE_SIZE - 1);
> if (i == 0)
> offset += start_offset;
>
> I can't understand why these is a test. I feel the variable
'offset'
> should be computed by code like:
> --
> offset = (dst_offset + start_offset) & ((unsigned
> long)PAGE_CACHE_SIZE - 1);
It could be offset = (dst->start + dst_offset) & PAGE_CACHE_SIZE - 1,
but start_offset is already the offset into the first page. So, we only
want to add it on the first page.
-chris