grub-devel
[Top][All Lists]
Advanced

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

Re: kexec GRUB, multiboot port and qemu


From: Vladimir 'φ-coder/phcoder' Serbinenko
Subject: Re: kexec GRUB, multiboot port and qemu
Date: Wed, 05 Sep 2012 07:45:02 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.6esrpre) Gecko/20120817 Icedove/10.0.6

On 27.08.2012 01:30, Ague Mill wrote:

> Hi!
> 
> As a developer working on Tails [1], a live distribution aimed at
> protecting its users' privacy, I am trying to tackle one of our
> long-standing issue: we need to properly overwrite the system memory
> with zeros on shutdown in order to erase traces of the user activity.
> 
> Actually, after some long hours of hacking, it looks like GRUB could
> be all what we needed to nail this issue. Have a look at the current
> state of affairs [2] if you are interested in the details.
> 

kexec'ing GRUB for this is an overkill it's much easier to have just a
small loop for this. Also note that i386 GRUB is unable to access memory
beyond 4G. It's not a problem for loading kernels but is a problem for
your application.

> [1] https://tails.boum.org/
> [2] https://tails.boum.org/bugs/sdmem_does_not_clear_all_memory/grub/
> 
> 
> I am currently stuck on how to obtain a standalone GRUB image that could
> be kexec'ed from Linux.
> 
> When building an ELF image with the 'pc' port, kexec replies:
> 
>     Base address: 8200 is not page aligned
> 
> The next candidate looked like the 'multiboot' port. But I can't get an
> image that will work in qemu. I have tried to build a strictly minimal
> boot image using the following commands:
> 
>     ./configure --with-platform=multiboot --target=i386
>     make -j4
>     ./grub-mkimage -O i386-multiboot -C xz -d ./grub-core \
>         -o /tmp/multiboot.img
> 
> Here is how I start qemu after:
> 
>     qemu -kernel /tmp/multiboot.img -vga std -m 256
> 
> And I get the following error:
> 
>     Missing Multiboot memory information
>     Aborted.
> 
> 

qemu has a bug of always putting mbi at 0x9500 even if this location is
used by binary.

> Is there any known working way to test multiboot images?
> Is there a better path to be able to use kexec to load and execute GRUB?
> 
> 
> I would very much like to offer the `wipe_memory` command for inclusion
> in GRUB (and do the necessary refinements on the patch) once we have
> something that works from one end to the other for Tails.
> 
> Thanks for your help,
> 
> 
> 
> _______________________________________________
> Grub-devel mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/grub-devel



-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]