Re: [PATCH 3/3] mlock: avoid dirtying pages and triggering writeback

From: Christoph Hellwig
Date: Fri Nov 19 2010 - 10:07:03 EST


On Fri, Nov 19, 2010 at 08:42:05AM -0500, Theodore Tso wrote:
> My vote would be against. ? If you if you mmap a sparse file and then
> try writing to it willy-nilly, bad things will happen. ?This is true without
> a mlock(). ? Where is it written that mlock() has anything to do with
> improving this situation?

Exactly. Allocating space has been a side-effect on a handfull
filesystem for about 20 kernel releases.

> If userspace wants to call fallocate() before it calls mlock(), it should
> do that. ?And in fact, in most cases, userspace should probably be
> encouraged to do that. ? But having mlock() call fallocate() and
> then return ENOSPC if there's no room? Isn't it confusing that mlock()
> call ENOSPC? Doesn't that give you cognitive dissonance? It should
> because fundamentally mlock() has nothing to do with block allocation!!
> Read the API spec!

Indeed. There is no need to make mlock + flag a parallel-API to
fallocate.

--
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/