Re: Loopback with holes

Stephen C. Tweedie (sct@redhat.com)
Fri, 23 Jul 1999 02:53:37 +0100 (BST)


Hi,

On Thu, 22 Jul 1999 14:40:37 +0200, Pavel Machek <pavel@bug.ucw.cz>
said:

>> This is exactly why we added the 2.2.2 kpiod thread. It is an
>> independent thread which carries out the blocking pageout operations on
>> behalf of kswapd. If that thread becomes totally blocked, kswapd simply
>> stops giving it more work to do, and devotes itself to rescuing the
>> situation by removing existing clean pages from memory.

> And if there are no more clean pages left?

That is a kernel total death situation anyway. Swap over nbd doesn't
change that. For example, we absolutely need to be able to allocate
buffer heads to be able to swap out at all.

> I can imagine situation when:
> *) there's lot of swap available
> *) there are no clean pages available

> Then I can see a deadlock.

Sure. That's a dead kernel. In practice it doesn't happen: you start
to get ENOMEM errors returned to the rest of the system long before
things get that desperate. A system with absolutely no executable code
cached isn't going anywhere. :)

There is nothing special about swap over nbd which makes this any harder
than swap to disk in this case.

--Stephen

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