problem with linux 2.2.15pre4 + Rik's VM fix

Rik van Riel riel en nl.linux.org
Jue Ene 27 01:16:58 CST 2000


On Wed, 26 Jan 2000, Gianluca Anzolin wrote:

> I've decided to give a try to Rik's patch but now I'm getting a
> warning when I try to connect to internet via pppd. The connection
> works but I get:
> 
> dracula kernel: gfp called by non-running (1) task from c011b9e6!
> dracula kernel: gfp called by non-running (1) task from c011b602!
> dracula last message repeated 6 times
> dracula kernel: gfp called by non-running (1) task from c011b9e6!
> 
> c011b57c T clear_page_tables
> c011b618 T free_page_tables
> c011b650 T new_page_tables
> c011b6f0 T copy_page_range
> c011b8d4 T zap_page_range
> c011ba98 T zeromap_page_range

Great! This is of big help to us kernel folks.

> Should I worry about the warnings ?

Not really. The warnings mean that there are places in the
kernel where a process with tsk->state != TASK_RUNNING is
calling __get_free_pages().

__get_free_pages() can sleep if there's not enough free
memory, this means that the task will be hauled through
schedule() and removed from the runqueue. However, since
the process has done nothing to be woken up again, it
might just be put to sleep forever.

In 2.2.14 (and earlier) the chance of this happening is
really small (but it's possible nontheless). With my VM
changes it's almost certain that the bug will be triggered.
I hope we'll catch a few bad pieces in the kernel this way
and can help to make 2.2.15 a better kernel...

When I caught that bug I put code in __get_free_pages()
to:
1) work around the problem
2) spit out an error message that makes it possible
   for us to track down where the error comes from

I hope that lots of people are going to test this code
so we can locate (and fix) all these buggy code paths
before production machines get bitten by it. I hereby
ask everyone with a spare machine to stress their setup
and try to trigger some of these bugs. Since there's
a workaround in place, it should be relatively safe.

regards,

Rik
--
The Internet is not a network of computers. It is a network
of people. That is its real strength.


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



Más información sobre la lista de distribución Ayuda