Steve Lord [lord@xxxxxxx] wrote:
> > the first 6-8 test succeeded.
> > i cycled the tests without clean shutdowns between (hmmm maybe one or two).
> >
> > then i made only one sync. after reboot some files differ. same problem,
> > size is ok, but no extents. the number of differs are small.
>
>
> Have you tried this with ext2?
no. shoud i?
> OK the real issue here is that sync is not really doing sync, the sync system
> call is starting I/O, but not waiting for it to complete. At least two syncs
> are probably necessary for this scenario right now. If you wait a few seconds
> there will be a kernel initiated sync anyway. And as Ananth pointed out,
> there are some bits of I/O which will take a couple of passes to get
> triggered.
>
> Obviously we cannot immediately flush everything to disk or performance
> would tank. The issue with XFS in this area has always been that the
> inode size gets out to disk in advance of the file data. You are looking
> at a consistent filesystem, it just has data missing! This is why xfs_check
> does not complain.
ok, when the return of sync means "writing data to disk will done" instead
"writing data to disk is done" then the fix works.
btw: with 3 syncs and reset in less than a second lost data is seen.
is this on irix the same? sometimes i found those no extend files on irix
after a crash.
utz
|