xfs reservation issues with xlog_sync roundoff
This fix is to address the problem with v2 logs, large stripe sizes,
and premature flushing of the iclogs, which can cause the grant heads
to fall behind the tail of the log. The grant heads falling behind can
mean the calculations of how much available space we have for transaction
reservations is incorrect.
This fixes the assertion failures with the new versions of xfstests/086,087
which tested large stripe sizes and continual sync's after writing
(which was forcing out the iclogs prematurely and thus causing
large roundoffs).
--Tim
Date: Fri Nov 19 15:12:31 AEDT 2004
Workarea: snap.melbourne.sgi.com:/home/fsgqa/qa/xfs-linux
Inspected by: overby@xxxxxxx
The following file(s) were checked into:
longdrop.melbourne.sgi.com:/isms/xfs-kern/xfs-linux-melb
Modid: xfs-linux-melb:xfs-kern:20222a
xfsidbg.c - 1.267
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfsidbg.c.diff?r1=text&tr1=1.267&r2=text&tr2=1.266&f=h
- Get rid of l_roundoff and ic_roundoff references.
xfs_log.c - 1.301
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_log.c.diff?r1=text&tr1=1.301&r2=text&tr2=1.300&f=h
- Get rid of l_roundoff and ic_roundoff.
Update the GWH and GRH at sync time with the roundoff value instead
of waiting until the iclog buffer is reused.
Also remove useless flags param to xlog_sync() and have it match
its linux counterpart in this regard.
xfs_log_priv.h - 1.103
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_log_priv.h.diff?r1=text&tr1=1.103&r2=text&tr2=1.102&f=h
- Get rid of l_roundoff and ic_roundoff.
Add extra roundoff param to xlog_pack_data().
xfs_log_recover.c - 1.292
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_log_recover.c.diff?r1=text&tr1=1.292&r2=text&tr2=1.291&f=h
- Add extra roundoff param to xlog_pack_data().
|