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
Michael Brown
3634e705b7
Remove osloader.c and replace with a prep_segment() that uses userptr_t
...
and get_memmap() in image/segment.c
2007-01-11 14:32:26 +00:00
Michael Brown
ceca6b185c
Added user_to_phys() and memset_user().
2007-01-11 14:27:27 +00:00
Michael Brown
c980cdd0aa
Move memmap.h out of arch/i386; it no longer contains anything
...
architecture-dependent and is needed by the ELF code.
2007-01-11 14:08:44 +00:00
Michael Brown
c6a4055fae
Add phys_to_user() and copy_user().
2007-01-11 14:01:20 +00:00
Michael Brown
fbfed96965
buffer.c should be using copy_{to,from}_user, rather than
...
copy_{to,from}_phys.
2007-01-11 05:42:06 +00:00
Michael Brown
037da9d840
I hate NULL pointer dereferences.
2007-01-11 05:27:02 +00:00
Michael Brown
03390f0cd6
Use pkb_pad() rather than doing it the dangerous way :)
2007-01-11 05:26:16 +00:00
Michael Brown
a3ed0cbbc7
Extract packet-padding login from rtl8139.c to a separate pkbpad.c file.
2007-01-11 05:25:50 +00:00
Michael Brown
6918cf9e9e
Change FTP to use a data buffer rather than a callback function.
2007-01-11 04:51:20 +00:00
Michael Brown
c0ef730ec4
Fix bug in buffer.c, add buffer mini-unit test.
2007-01-11 04:46:41 +00:00