Re: Fwd: Re: Hibernation on i386 failure...

From: Woody Suwalski
Date: Sun Mar 04 2018 - 06:09:51 EST


Pavel Machek wrote:
On Sat 2018-03-03 19:03:48, Woody Suwalski wrote:
Pavel Machek wrote:
Hi!

On Tue 2018-01-09 16:54:51, Woody Suwalski wrote:
Hey Pavel, so you have found that issue earlier... Do you have a patch to
try?
Did I? I do not remember clearly.

Anyway, here are my hibernation-related patches... Absolutely no
guarantees.
Pavel, here is my attempt to convert your patch to 4.15 git, it builds
cleanly, and it does not work. If you have a moment to spare - could you
check if it is a classic case "everything is good, just does not
work"?
Sorry for the delay.

I've tested today's linux-next, and hibernation works for me, no
patches needed.

Best regards,
Pavel
My January tests have showed that hibernation does work if I turn off the
CONFIG_RELOCATABLE option.
So can you confirm that you have it enabled and it works again? I will try
it on 4.16-rc4 tomorrow...
I was actually testing with linux-next:

commit 80253003d5da3b82d6bebfb755a04c24011e90e2
Author: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Date: Fri Mar 2 14:17:11 2018 +1100

Add linux-next specific files for 20180302

# git clone
git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
# git fetch linux-next
# git fetch --tags linux-next
git remote update
# then: git checkout next-20170201

And yes, I do have CONFIG_RELOCATABLE on:

CONFIG_RELOCATABLE=y
# CONFIG_RANDOMIZE_BASE is not set
CONFIG_X86_NEED_RELOCS=y

Best regards,
Pavel
Almost there. Yes I have noticed the linux-next, but I wanted to see first if the same does not work in the mainline - then it would have pointed to the difference between the branches.

However the important part is your "CONFIG_RANDOMIZE_BASE is not set". Try to turn it on and check hibernation. I have used the CONFIG_RELOCATABLE entry, because it turns off the randomized automatically, and on its own it I had no use for it. BTW. turning the relocatable field on by default also brings randomization on, so you must have specifically disable it. Why?

So the real issue is: can the 32-bit kernel use randomization, _and_ hibernate on linux-next???

Thanks, Woody