Repeatable bug, here's how to create the situation:
1. Start with a fresh install of stock RedHat 9.
2. Download kernel 2.4.22.
3. Patch in XFS 1.3.1 and build new kernel.
4. Create an XFS file system and mount it on (say) /mnt/xfs.
5. Download and build bonnie++-1.03a
6. Run bonnie++ with these flags
bonnie++ -d /mnt/xfs -u 0:0 -s 0 -n 16
Everything goes fine. This is a test that creates, stats, and
deletes 16*1024 empty files.
7. Now up the number of files to 500*1024
bonnie++ -d /mnt/xfs -u 0:0 -s 0 -n 500
Here are the syslog entries.
Filesystem "sd(8,17)": xfs_log_write: reservation ran out. Need to up
reservation
xfs_force_shutdown(sd(8,17),0x8) called from line 1739 of file xfs_log.c.
Return address = 0xc01f4cdb
Filesystem "sd(8,17)": Corruption of in-memory data detected. Shutting down
filesystem: sd(8,17)
Please umount the filesystem, and rectify the problem(s)
xfs_force_shutdown(sd(8,17),0x2) called from line 747 of file xfs_log.c.
Return address = 0xc01f4cdb
8. You can however recover and mount again:
umount /mnt/xfs
mount /dev/sdb1 /mnt/xfs
XFS mounting filesystem sd(8,17)
Starting XFS recovery on filesystem: sd(8,17) (dev: 8/17)
Ending XFS recovery on filesystem: sd(8,17) (dev: 8/17)
Other info: Not specific to hardware, has been reproduced on two
different servers, one with SCSI, the other with SCSI RAID.
On these same servers,
9. IBM JFS with this bonnie++ benchmark requires a hard reset.
10. Reiserfs survives repeated bonnie++ tests as above.
Also, on a third server we have XFS 1.2.0 which works fine too.
So XFS 1.3.1 seems heavily implicated.
Thanks for any patches and/or fixes.
|