We may be falling victim to the 'page aging does not work' thread
on linux-kernel in that we appear to be having very recently used
blocks pulled out from under us. However, there is a problem with
XFS getting called in the non-transaction case. If we end up in
page_launder() and call back into XFS which does a transaction
which ends up needing to flush the log there is a deadlock.
This actually pulls us back more in line with the way things
work on Irix.
Date: Thu Sep 6 12:52:37 PDT 2001
Workarea: jen.americas.sgi.com:/src/lord/xfs-linux.2.4
The following file(s) were checked into:
bonnie.engr.sgi.com:/isms/slinx/2.4.x-xfs
Modid: 2.4.x-xfs:slinx:102267a
linux/fs/xfs/xfs_trans_buf.c - 1.96
- Add in BUF_BUSY flag into the non-transaction cases in trans_get_buf
and
trans_read_buf to avoid deadlocks where we come back into the
filesystem
again via page_launder.
|