btrfs: Return right extent when fiemap gives unaligned offset and len.
btrfs: Return right extent when fiemap gives unaligned offset and len.

When page aligned start and len passed to extent_fiemap(), the result is
good, but when start and len is not aligned, e.g. start = 1 and len =
4095 is passed to extent_fiemap(), it returns no extent.

The problem is that start and len is all rounded down which causes the
problem. This patch will round down start and round up (start + len) to
return right extent.

Reported-by: Chandan Rajendra <5b09eece4a5b11d5d0125c0f7eca424d593874ed@linux.vnet.ibm.com>
Signed-off-by: Qu Wenruo <f41a7033a6382ce00d6b717e37d942dbe3c9a107@cn.fujitsu.com>
Reviewed-by: David Sterba <a2ce9d316ca04d17b520237d2846a218b8284e52@suse.cz>
Signed-off-by: Chris Mason <e2e8c5702d8ed5f565988a1cf5bb35c9ce199e5e@fb.com>

KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs