xfs_bmap_compute_maxlevels should be based on di_forkoff instead of
m_attr_offset
Fix up xfs_bmap_compute_maxlevels() to account for the case when we go
from using attr2 to using attr1. In that case attr1 will no longer necessarily
be at m_attr_offset>>3, but could be at a different value for di_forkoff.
Therefore, we return the worst case scenario using MINDBTPTRS and MINABTPTRS,
as this function is used for determining the maximum log space.
Date: Mon Apr 14 15:10:39 AEST 2008
Workarea: chook.melbourne.sgi.com:/build/tes/2.6.x-xfs
Inspected by: sandeen@xxxxxxxxxxx
The following file(s) were checked into:
longdrop.melbourne.sgi.com:/isms/linux/2.6.x-xfs-melb
Modid: xfs-linux-melb:xfs-kern:30862a
fs/xfs/xfs_bmap.c - 1.390 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_bmap.c.diff?r1=text&tr1=1.390&r2=text&tr2=1.389&f=h
- Fix up xfs_bmap_compute_maxlevels() to account for the case when we go
from using attr2 to using attr1. In that case attr1 will no longer
necessarily
be at m_attr_offset>>3, but could be at a different value for
di_forkoff.
Therefore, we return the worst case scenario using MINDBTPTRS and
MINABTPTRS,
as this function is used for determining the maximum log space.
|