On Mon, 2002-01-28 at 16:49, Andrew Morton wrote:
> Ethan Benson wrote:
> >
> > someone i was talking to recently has been using the 2.4.17 xfs
> > patches with 2.4.18pre kernels and found apt-get failed due to errors
> > returned by msync() (which appears to be returning 1 (not -1)).
> > msync is involved in writing these apt binary cache files.
> >
>
> Interesting.
>
> In 2.4.18-pre3 I changed msync. Previously, it was ignoring things
> like EIO and ENOSPC on writepage() operations. The change was to
> correctly propagate these error codes all the way back to the
> caller, all over the place.
>
> The raw diff is at
> http://www.zip.com.au/~akpm/linux/2.4/2.4.18-pre3/msync-ret.patch
>
> If someone is returning `1' from msync() then probably an
> underlying filesystem is returning `1' from its get_block()
> or writepage() method. It shouldn't. It should return
> either zero or a negative errno.
Bingo, there used to be some code where we did return a value to
indicate how much got flushed when we did a clustered write, I
don't think we use that anymore. So I will go revert the writepage
output to what it should be.
Thanks,
Steve
--
Steve Lord voice: +1-651-683-3511
Principal Engineer, Filesystem Software email: lord@xxxxxxx
|