Re: [Bug #13058] First hibernation attempt fails

From: Rafael J. Wysocki
Date: Wed Apr 22 2009 - 16:12:27 EST


On Wednesday 22 April 2009, Pavel Machek wrote:
> Hi!
>
> > Of course, this will protect the calling task from getting oom-killed.
> > But it doesn't protect other tasks from getting oom-killed due to the
> > activity of _this_ task.
> >
> > But I think that problem already exists, and that this proposal doesn't
> > worsen anything, yes?
> >
> > Or is it the case that all other tasks are safely stuck in the freezer
> > at this time, so they won't be allocating any memory anyway?
>
> That is the idea, yes. ... but we now have more threads that are not
> freezable... so they may allocate the memory.
>
> Is it non-feasible to free memory without really going and allocating
> everything?

The question is whether there is a point. In principle we can just go and
allocate as much as we need upfront. It shouldn't change anything, because
we resume and suspend devices after creating the image anyway.

I think we could try to disable the OOM killer before suspend and just
allocate the memory for the image right before devices are suspended for the
first time.

Thanks,
Rafael
--
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/