Re: statfs() / statvfs() syscall ballsup...

From: Trond Myklebust
Date: Fri Oct 10 2003 - 12:55:26 EST


>>>>> " " == Linus Torvalds <torvalds@xxxxxxxx> writes:

> On Fri, 10 Oct 2003, Joel Becker wrote:
>>
>> msync() forces write(), like fsync(). It doesn't force read().

> Actually, the kernel has a "readahead(fd, offset, size)" system
> call that will start asynchronous read-ahead on any
> mapping. After that, just touching the page will obviously map
> in and synchronize the result.

That's different. That's just preheating the page cache.

It does nothing for the case Joel mentioned where 2 different nodes
are writing to the same device, and you need to force a read in order
to resynchronize the page cache.
Apart from O_DIRECT, we have nothing in the kernel as it stands that
will allow userland to deal with this case.

Cheers,
Trond
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/