Re: fadvise syscall?

Joel Becker (jlbec@evilplan.org)
Mon, 18 Mar 2002 08:05:31 +0000


On Sun, Mar 17, 2002 at 01:41:37PM +0000, Anton Altaparmakov wrote:
> We don't need fadvise IMHO. That is what open(2) is for. The streaming
> request you are asking for is just a normal open(2). It will do read ahead
> which is perfect for streaming (of data size << RAM size in its current form).

A quick real world example of where fadvise can work well.
Imagine a database appliction that doesn't use O_DIRECT (for whatever
reason, could even be that they don't trust the linux implementation yet
:-). So, this database gets a query. That query requires a full table
scan, so it calls fadvise(fd, F_SEQUENTIAL). Then another query does
row-specific access, and caching helps. So it wants to turn off
F_SEQUENTIAL.
Other applications can use this sort of stuff. DBM could, for
instance. So might GIMP. Etc. Dynamic hints have real world
applications.

Joel

-- 

print STDOUT q Just another Perl hacker, unless $spring -Larry Wall

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