2
0
mirror of https://github.com/xcat2/xNBA.git synced 2024-12-14 07:11:32 +00:00
Commit Graph

1450 Commits

Author SHA1 Message Date
Michael Brown
6fdc6c81a6 Force probing of multiboot before ELF. 2007-01-12 08:10:35 +00:00
Michael Brown
475d6d1f7c fetch() now knows nothing about struct image; it simply loads a file and
returns the allocated buffer.
2007-01-12 08:02:27 +00:00
Michael Brown
2876197306 Allow "imgexec" with no arguments to boot the file that was loaded with
"kernel".
2007-01-12 07:32:46 +00:00
Michael Brown
f135a37f30 Cleaner separation between imgXXX() functions and image_cmd.c 2007-01-12 07:22:20 +00:00
Michael Brown
742f242863 Add free_image 2007-01-12 06:26:59 +00:00
Michael Brown
9817f93094 Add basic "fetch" and "imgstat" commands. 2007-01-12 06:05:27 +00:00
Michael Brown
b9fea9cbac Added IMAGE_LOADED flag and find_image() 2007-01-12 06:03:02 +00:00
Michael Brown
8b6eaf3c82 Be silent if there are no network interfaces 2007-01-12 05:48:22 +00:00
Michael Brown
e96041872e Added missing declaration. 2007-01-12 05:27:02 +00:00
Michael Brown
9debfed07a Place command-line inline, to save on memory allocation hassles. 2007-01-12 05:26:19 +00:00
Michael Brown
f15482d85f Added basename() to make automatically naming images easier. 2007-01-12 05:24:51 +00:00
Michael Brown
29dadc5ec6 Build automatically expanding buffers from struct buffer and erealloc(). 2007-01-12 03:51:04 +00:00
Michael Brown
77b7640af4 Fix the only bug (which was to use DBGC() in place of DBG()!) and add 4kB
alignment.
2007-01-12 03:28:03 +00:00
Michael Brown
132a8fe49d Quick and dirty test for emalloc() 2007-01-12 03:27:05 +00:00
Michael Brown
45ec9c907e First version of an external memory allocator (not tested) 2007-01-12 03:15:29 +00:00
Michael Brown
1d313234b3 Rename copy_user() to memcpy_user(). Add memmove_user() and
userptr_add().
2007-01-12 03:14:15 +00:00
Michael Brown
859da6bd32 Allow external code to update hidden memory regions. 2007-01-12 03:13:04 +00:00
Michael Brown
687c1e3227 Nothing (not even hidemem.c) uses this file! 2007-01-12 02:45:46 +00:00
Michael Brown
39a8ed827c Long since obsoleted by arch/i386/scripts/i386.lds 2007-01-12 02:43:10 +00:00
Michael Brown
2e088d9afc Obsoleted by arch/i386/interface/pxe/pxe_call.c 2007-01-12 02:42:14 +00:00
Michael Brown
f81bf3bc52 We *do* have a __data16_array after all! 2007-01-12 02:37:47 +00:00
Michael Brown
2c66588f3e Add UNULL 2007-01-12 01:40:12 +00:00
Michael Brown
6c894c2a2e Fix typo 2007-01-12 01:37:38 +00:00
Michael Brown
e4c6418ac0 We may be required to page-align modules, so let's make sure we catch
it if we don't.
2007-01-12 00:09:16 +00:00
Michael Brown
7bf94b5ad6 Allow for named images. 2007-01-11 23:45:18 +00:00
Michael Brown
f59ad50504 Provide registration mechanism for loaded images, so that we can e.g.
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.
2007-01-11 23:43:29 +00:00
Michael Brown
79a399c05a alloca() can be useful in some (limited) circumstances. 2007-01-11 23:19:31 +00:00
Michael Brown
f31d91bce5 Populate multiboot information structure before calling OS. 2007-01-11 21:21:02 +00:00
Michael Brown
ddbc60b5ae Whoever put together the grub multiboot.h header is insane. 2007-01-11 21:20:27 +00:00
Michael Brown
c468c68661 Add command line that can be passed to executed images. 2007-01-11 21:19:29 +00:00
Michael Brown
200d92c76d Avoid namespace clashes 2007-01-11 19:42:26 +00:00
Michael Brown
bcc98c78b8 Added fields present in the documentation but not in the header file. 2007-01-11 19:41:13 +00:00
Michael Brown
dc51af59a4 Capable of starting a multiboot kernel (albeit without the multiboot
information table yet).
2007-01-11 18:41:15 +00:00
Michael Brown
9196e9069c Add PHYS_CODE, for use as in __asm__ ( PHYS_CODE ( ... ) ), comparable
to the REAL_CODE interface.
2007-01-11 18:40:46 +00:00
Michael Brown
d488a172eb Capable of loading a multiboot image into memory 2007-01-11 17:44:42 +00:00
Michael Brown
7cf4a72389 Add placeholder elf_execute() 2007-01-11 17:44:07 +00:00
Michael Brown
819cd3f41c Limit -ENOEXEC to mean "this is not in my format". 2007-01-11 17:06:25 +00:00
Michael Brown
6a03552381 Distinguish between ENOMEM (as representing a lack of internal memory
as allocated by malloc()) versus all other errors, in particular
ENOBUFS (representing a lack of external buffer space, e.g. in a
device's TX queue or a user buffer).
2007-01-11 16:30:21 +00:00
Michael Brown
143e3b84a4 Downloaded from current grub CVS. 2007-01-11 16:22:03 +00:00
Michael Brown
c810baad37 Use generic "struct image" rather than "struct elf". 2007-01-11 16:10:32 +00:00
Michael Brown
c6c63d954d Rename "image" field to "data", because "image->image" is just confusing. 2007-01-11 16:07:30 +00:00
Michael Brown
4fc9333159 Move include/image.h to include/gpxe/image.h 2007-01-11 16:04:36 +00:00
Michael Brown
d84ec0e5d5 Had this file lying around for ages; may as well check it in. 2007-01-11 15:31:50 +00:00
Michael Brown
91ac92bc86 Try image as ELF file first. (Don't yet actually try to execute it). 2007-01-11 15:27:06 +00:00
Michael Brown
3460860bef Print informative error message when boot fails. 2007-01-11 15:26:17 +00:00
Michael Brown
230f16538f Create include/gpxe/elf.h for the ELF bits that aren't part of the ELF
standard and so don't belong in include/elf.h
2007-01-11 15:25:07 +00:00
Michael Brown
0010e10ef3 Update TFTP to use a struct buffer rather than a callback.
Add debug autocolourisation to TFTP.
2007-01-11 15:14:54 +00:00
Michael Brown
d9204ef676 Use physical address in debug messages; they make more sense to read. 2007-01-11 15:08:58 +00:00
Michael Brown
7ad1c2eaa8 Removed the Etherboot-specific ELF-image code and replaced it with a
generic ELF loader, to be used by the multiboot code.
2007-01-11 14:44:03 +00:00
Michael Brown
10980c12ee Add image directory back in 2007-01-11 14:43:15 +00:00