On Thu, 2003-05-01 at 21:14, Kelledin wrote:
> After some testing and hammering the XFS 2003-04-07 patchset on
> my decrepit EV56 box, I got the best break I've had all week.
>
> The breakdown:
>
> The XFS driver appears to make an assumption about sizeof(long)
> in fs/xfs/xfs_vfsops.c. Apparently it's trying to clamp the max
> inode count to a signed 32-bit range based on that sizeof()
> assumption. The assumption obviously doesn't hold for Alpha
> (and probably other 64-bit architectures as well).
Try this instead:
--- /usr/tmp/TmpDir.15572-0/linux/fs/xfs/xfs_vfsops.c_1.419 Thu May 1
22:04:39 2003
+++ linux/fs/xfs/xfs_vfsops.c Thu May 1 21:57:43 2003
@@ -803,7 +803,7 @@
if (!mp->m_inoadd)
#endif
statp->f_files =
- MIN(statp->f_files, (long)mp->m_maxicount);
+ MIN(statp->f_files,
(typeof(statp->f_files))mp->m_maxicount);
statp->f_ffree = statp->f_files - (sbp->sb_icount - sbp->sb_ifree);
XFS_SB_UNLOCK(mp, s);
Steve
|