| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
We can just treat all non-kernel images as initrds, which matches our
behaviour for multiboot kernels. This allows us to eliminate initrd as
an image type, and treat the "initrd" command as just another synonym for
"imgfetch".
|
|
|
|
|
|
|
| |
OpenBSD throws compiler warnings that we can't reproduce on Linux, for
some reason.
Original patch from Dewey Hylton <dewey@hyltown.com>.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Delete ELF as a generic image type. The method for invoking an
ELF-based image (as well as any tables that must be set up to allow it
to boot) will always depend on the specific architecture. core/elf.c
now only provides the elf_load() function, to avoid duplicating
functionality between ELF-based image types.
Add arch/i386/image/elfboot.c, to handle the generic case of 32-bit
x86 ELF images. We don't currently set up any multiboot tables, ELF
notes, etc. This seems to be sufficient for loading kernels generated
using both wraplinux and coreboot's mkelfImage.
Note that while Etherboot 5.4 allowed ELF images to return, we don't.
There is no callback mechanism for the loaded image to shut down gPXE,
which means that we have to shut down before invoking the image. This
means that we lose device state, protection against being trampled on,
etc. It is not safe to continue afterwards.
|
|
|
|
|
|
|
|
| |
When the embedded image is a script, the unregister_image() performed by
image/script.c corrupts memory, since image/embedded.c omitted the call
to register_image().
This is the first bug fixed using Stefan Hajnoczi's gdb stub for gPXE.
|
| |
|
| |
|
|
|
|
|
| |
executing any image, not just a script. (This will enable pxelinux to
use relative URIs, should it wish to.)
|
| |
|
|
|
|
| |
Print error status using strerror().
|
|
|
|
|
| |
allows us to avoid execution loops without having to hack around the
image registration order.
|
| |
|
| |
|
| |
|
|
|
|
| |
Add scripts as an image format (since it's trivial to do).
|
| |
|
|
|
|
| |
userptr_add().
|
|
|
|
|
|
|
|
| |
refer to them by name from the command line, or build them into a
multiboot module list.
Use setting image->type to disambiguate between "not my image" and "bad
image"; this avoids relying on specific values of the error code.
|
| |
|
| |
|
| |
|
|
|
|
| |
standard and so don't belong in include/elf.h
|
|
|
|
| |
generic ELF loader, to be used by the multiboot code.
|
|
and get_memmap() in image/segment.c
|