[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [olpc-software] graceful handling of out-of-memory conditions



On Tue, Mar 28, 2006 at 01:11:09PM +1000, Martin Sevior wrote:
> Is it possible to provide a signal to a process upon receiving a an Out
> Of Memory rather than just returning a NULL pointer? While returning

The C standard is pretty clear. Handle malloc failure yourself. If you
want a signal from it then wrap malloc and do it yourself. A simple

	if(foo == NULL) raise(SIGBLAH)

or in C++ throw an exception.

> NULL pointers will almost certainly cause AbiWord to segfault it would
> nicer to know that the segfault was actually an OOM event rather than a

Thats worrying. So Abiword handles untrusted documents but doesn't do NULL
pointer checks which on some machines lets you scribble on low memory pages
and build exploits.

I hope thats not what you are implying.

> delete classes (to release memory) and to give an appropriate document
> name, if the latter it make more sense to dump the document as quickly
> as possible.

Very hard from a signal handler because you may only use signal safe library
functions. 

Alan



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]