lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-Id: <200707311806.02000.a1426z@gawab.com>
Date:	Tue, 31 Jul 2007 18:06:01 +0300
From:	Al Boldi <a1426z@...ab.com>
To:	linux-kernel@...r.kernel.org
Subject: HowTo crashkernel hibernation (was: [PATH 0/1] Kexec jump - v2 - the first step to kexec based hibernation)

Pavel Machek wrote:
> > 3. Boot kernel compiled for normal usage, the reserved crash kernel
> > memory region must be added to kernel command line as following:
> >
> > crashkernel=<XX>M@<XX>M
> >
> > Where, <XX> should be replaced by the real memory size and
> > position.
>
> I used crashkernel=64M@64M .

It's good to see that people finally try this.

I used crashkernel=16M@16M, which is the absolute minimum I managed to have 
the crashkernel boot successfully.

> > 4. Load kernel compiled for hibernating usage as a crashdump kernel
> > with kexec, the same kernel as that of 3 can be used if
> > CONFIG_RELOCATABLE=y is selected.

That's not enough.  You have to set the CONFIG_PHYSICAL_START to 1,000,000 
for a 16M start.  That's because the crashkernel only supports vmlinux, 
which cannot be relocatable.

> > The kernel command line option as
> > following must be appended to kernel command line.
> >
> > kexec_jump_buf_pfn=`cat /sys/kernel/kexec_jump_buf_pfn`
> >
> > For example, the shell command line can be as follow:
> >
> > kexec -p /boot/vmlinux --args-linux --append="root=/dev/hdb signal
> > kexec_jump_buf_pfn=`cat /sys/kernel/kexec_jump_buf_pfn`"
>
> I think I followed the instructions closely. Now I'm trying to do
>
> kexec -p /data/l/linux/vmlinux --args-linux --append="init=/bin/bash
> kexec_jump_buf_pfn=`cat /sys/kernel/kexec_jump_buf_pfn`"
>
> but it tells me:
>
> Invalid memory segment 0x100000 - 0x7a0fff
>
> (and nothing in dmesg)
>
> If I try to load bzImage (corresponding to vmlinux I tried to use),  I
> get:
>
> root@amd:~# kexec -p /data/l/linux/arch/i386/boot/bzImage
> --append="init=/bin/bash \ kexec_jump_buf_pfn=`cat
> /sys/kernel/kexec_jump_buf_pfn`" Could not find a free area \ of memory of
> 9000 bytes... locate_hole failed
> root@amd:~#
>
> What am I doing wrong?

Nothing, but the doc isn't really clear on this, and an update is probably in 
order.


Thanks!

--
Al

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ