Re: 2.6.37-rc1+: hibernate regression, claims not enough swap space

Pavel Machek
2010-11-16T05:27:03Z

Hi!

> > ...but there's enough -- or at least it was enough to fit previous
> > versions. 32-bit machine, so it has highmem.
> >
> > System is in console mode, very lightly loaded.
> >
> > Mem: 2054716k total, 736548k used, 1318168k free, 15368k buffers
> > Swap: 779148k total, 2360k used, 776788k free, 546388k cached
>
> Well, the swap is rather in short supply. Below the 50% of RAM recommendation.

Well, but the biggest image we can write is not 50% of RAM, but 50% of
lowmem... and swap is nearly as big as lowmem in this case -- so this
machine is not misconfigured.

root@amd:/# cat /proc/meminfo
MemTotal: 2054716 kB
MemFree: 192048 kB
Buffers: 97628 kB
Cached: 1427088 kB
SwapCached: 0 kB
Active: 547580 kB
Inactive: 1091744 kB
Active(anon): 57060 kB
Inactive(anon): 58908 kB
Active(file): 490520 kB
Inactive(file): 1032836 kB
Unevictable: 0 kB
Mlocked: 0 kB
HighTotal: 1178440 kB
HighFree: 128092 kB
LowTotal: 876276 kB
LowFree: 63956 kB
SwapTotal: 779148 kB
SwapFree: 779148 kB

> > thinkpad_acpi: ACPI backlight control delay disabled
> > PM: thaw of devices complete after 539.577 msecs
> > PM: writing image.
> > PM: Free swap pages: 194166
> > PM: Not enough free swap
> > Restarting tasks ...
> >
> > Aha, and it is the new default /sys/power/image_size .. setting it to
> > 0 lets machine hibernate. I guess the new default is very wrong for
> > highmem machine...
>
> The old default did the wrong thing for everyone with sufficient swap (it made
> the OOM code trigger every time while preparing to create an image), so I think
> the new one it's better overall.

OOM? No... image_size of 0 should have written "as small image as
possible"; slow, but should not OOM.