Re: innd mmap bug in 2.4.0-test12

Linus Torvalds
2000-12-28T00:12:25Z

On Wed, 27 Dec 2000, Rik van Riel wrote:
>
> The (trivial) patch below should fix this problem.

It must be wrong.

If we have a dirty page on the LRU lists, that page _must_ have a mapping.

What semantics would you say a non-mapped page has? What are the LRU
routines supposed to do with such a page?

The bug is somewhere else, and your patch is just papering it over. We
should not have a page without a mapping on the LRU lists in the first
place, except if the page has anonymous buffers (and such a page cannot
legally be dirty as things are in the standard kernel - Chris Mason has
been working on stuff that would make that a normal thing, but it would
also make the page have a mapping).

We'd better add a debug check that makes sure that we don't have
non-mapped non-buffer pages on the LRU lists, and figure out how such a
thing could happen.

Linus