| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
| |
the data section to the bss section givig us initialization for free.
Noticed by: bde
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o Revision 1.38 introduced the -n flag. It conflicted with the
RB_BOOTINFO flag, so was in effect always on. Change the -n flag to
be bit 0x1c instead of 0x1f. This also had the consequence that a mal-formed
/boot.config would render the system unbootable because the user was
unable to enter anything at all on the command line.
o Remove the initialization of opt to be RB_BOOTINFO since we filter that bit
out and do not otherwise use it.
Reviewed by: jhb
MFC after: 3 days
|
|
|
|
|
|
|
| |
It is not complete (the LILO root= specification isn't passed to our
loader for instance), it has not been touched in over 2 years. Linux has
moved on to GRUB, so this is OBE now. If someone creeps up to work on it,
it could become a port.
|
|
|
|
| |
that it does here.
|
|
|
|
|
|
|
| |
current uses, the name strcmp has strong connotations that shouldn't
lightly be discarded. This doesn't cost us anything.
Submitted by: bde
|
| |
|
|
|
|
|
|
|
|
|
| |
the last second before the commit.
# likely we can remove this hack now that gcc generates better aligned code
# in the align to word case.
Noticed by: bde
|
|
|
|
|
| |
1) Put back the keyboard printing printf, at the cost of 58 bytes.
2) Minor tweak to getstr at no apparent cost.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
subset of Peter's patchs that are believed to be safe.
Makefile tweaks:
o -fomit-frame-pointer
o Change default to building both UFS1 and UFS2 bootblocks.
Lots of boot2 tweaks:
o lookup is only ever called with kname, so use it directly.
o inline memsize
o getstr are only ever called with cmd, so hardware that.
o tweaks to the parsing code to test after the conversion rather than
before since we tested after anyways.
o eliminate support for %x in printf.
o eliminate a few bytes in printfs.
o Tweak the boot banner.
o eliminate support for wd and " " devices (I might add wd back to
keep bde happy).
o eliminate support for a few arguments.
This takes us from -162 bytes free to 67 bytes free.
I've tested this only on a few systems, so be careful when updating to
this change.
Submitted by: peter, imp, ian
|
| |
|
|
|
|
|
|
|
|
|
|
| |
it possible to make UFS1_ONLY and UFS2_ONLY versions which fit inside the
traditional 16 sectors.
Remove assorted now unneeded hackery.
UFS1_AND_UFS2 still needs another 150 bytes to work, and that is probably
not within our reach, ever.
|
| |
|
| |
|
| |
|
|
|
|
| |
use it. This saves a surprising number of bytes.
|
|
|
|
| |
Approved by: re
|
|
|
|
|
|
| |
Don't expect me to participate in a discussion which is which.
Sponsored by: DARPA & NAI Labs.
|
|
|
|
|
|
|
| |
to run at 0xc000 by changing its virtual start address from 0x1000 to
0x2000.
Tested by: phk
|
|
|
|
|
|
| |
don't bother with libkern.
Sponsored by: DARPA & NAI Labs.
|
|
|
|
| |
Sponsored by: DARPA & NAI labs
|
|
|
|
|
| |
also improves the "random undocumented offsets into various memory
spaces" a little bit.
|
| |
|
|
|
|
|
|
|
| |
contents is irrelevant and likely to be zero;
This doesn't change the resultant value, but it does save a couple of bytes
because &_end is constant.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
work as advertised:
bang# pwd
/bang/src/sys/boot/i386/boot2
bang# make clean >& /dev/null
bang# cvs -q update -r 1.35 Makefile >& /dev/null
bang# make >& /dev/null
bang# cat /usr/obj/`pwd`/boot2.h
#define XREADORG 0x725
bang# cvs -q update -r 1.36 Makefile > & /dev/null
bang# make clean > & /dev/null
bang# make > & /dev/null
bang# cat /usr/obj/`pwd`/boot2.h
#define XREADORG 0x25
bang#
|
|
|
|
| |
Sponsored by: DARPA & NAI Labs.
|
| |
|
|
|
|
|
|
|
|
| |
Conditionalize the "XX bytes left" checks reference on UFS1/UFS12.
Conditionally build the necessary 64bit math for boot2 if UFS12.
Sponsored by: DARPA & NAI Labs.
|
|
|
|
|
|
| |
it through CPP so we can conditionalized things.
Sponsored by: DARPA & NAI Labs
|
|
|
|
|
|
|
|
| |
It seems that the existence of a "depend" target in src/sys/boot is not
to be taken as an indication that it actually does what one would expect,
at least it clearly threw my testing off.
Apologies to: jhb
|
|
|
|
| |
Sponsored by: DARPA & NAI Labs.
|
|
|
|
|
|
|
| |
Load 4 sectors more than we used to. This is harmless overhead for
the UFS1_ONLY case, but sufficient for boot2(UFS1+2).
Sponsored by: DARPA & NAI Labs
|
|
|
|
| |
Sponsored by: DARPA & NAI Labs.
|
|
|
|
|
|
|
|
|
|
|
| |
Many recent machine have a broken INT 12H (Get base memory size)
implementation and boot program stops if INT 12H is called.
This commit should solve the problem at very first step of FreeBSD
installation occurred on newer some machines.
Reviewed by: bde, jhb
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Peter had repocopied sys/disklabel.h to sys/diskpc98.h and sys/diskmbr.h.
These two new copies are still intact copies of disklabel.h and
therefore protected by #ifndef _SYS_DISKLABEL_H_ so #including them
in programs which already include <sys.disklabel.h> is currently a
no-op.
This commit adds a number of such #includes.
Once I have verified that I have fixed all the places which need fixing,
I will commit the updated versions of the three #include files.
Sponsored by: DARPA & NAI Labs.
|
|
|
|
|
|
| |
of SIOPRT which broke kgzldr and therefore make release.
Pointed out by: murray
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
under way to move the remnants of the a.out toolchain to ports. As the
comment in src/Makefile said, this stuff is deprecated and one should not
expect this to remain beyond 4.0-REL. It has already lasted WAY beyond
that.
Notable exceptions:
gcc - I have not touched the a.out generation stuff there.
ldd/ldconfig - still have some code to interface with a.out rtld.
old as/ld/etc - I have not removed these yet, pending their move to ports.
some includes - necessary for ldd/ldconfig for now.
Tested on: i386 (extensively), alpha
|
|
|
|
|
|
| |
Now that hint.acpi.0.disabled="0" won't disable acpi as expected.
Pointed-out by: bde
|
|
|
|
|
|
|
| |
GCC 3.2 overflows boot2 by 12 bytes, this patch brings it back
within the boundaries, with 12 bytes available for future bloat.
Approved by: obrien
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
At the front is btxldr, in the middle is BTX itself (our mini-kernel), and
then the 'client' (loader.bin) which is the actual loader itself. boot2
just executes a raw ELF or a.out binary with the only setup provided being
that a bootinfo structure is passed on the stack. Now, since loader.bin
is a BTX client, the loader needs to be able to locate a BTX kernel for
the client to execute in the context. Thus, just like pxelder, btxldr
uses the a.out header on the loader binary to find the BTX kernel stored
in the loader and set it up. It does _not_ just reuse the BTX kernel
that boot2 invoked it with. This is because it can't assume that it will
_have_ a "spare" BTX kernel lying around. For example, when cdboot
loads the loader there isn't an existing BTX kernel. In fact, cdboot
will only work with an a.out loader as well since it also "borrows" the
BTX kernel in the loader binary (which it finds by parsing the a.out
header) just as pxeldr does. The only difference between cdboot and
pxeldr is where they get /boot/loader from.
If we wanted to make /boot/loader be an actual ELF binary we would need
to change the following utilites to handle that (and they all have to be
able to handle locating the BTX kernel inside of an ELF binary somehow):
- btxldr
- pxeldr
- cdboot
If we didn't want to require a flag day but make the transition smooth
then we need to be able to support both a.out and ELF versions of
/boot/loader which isn't exactly trivial since all three of these utilities
are written in assembly.
Pointy-hat to: peter
|
|
|
|
|
|
|
|
|
| |
Fix device hints entry for disabling acpi(4).
This also should fix the arbitration with apm(4) when both drivers
are enabled.
Note that your /boot/device.hints needs to be updated if you want to
stop auto-loading acpi.ko or disable acpi(4).
|
|
|
|
|
| |
own a.out version of loader.bin rather than depend on ../loader/loader
being a.out.
|
|
|
|
| |
never updated for the metadata infrastructure.
|
|
|
|
|
|
| |
this was quite broken, it never was updated for metadata support.
The a.out kld file support was never really used, as it wasn't necessary.
You could always load elf kld's, even in an a.out kernel.
|
| |
|
|
|
|
|
| |
Document the approved ways of disabling it.
Submitted by: Daniel O'Connor <doconnor@gsoft.com.au>
|
|
|
|
|
| |
undocumented how to control its loading and queries to freebsd-current
go unanswered.
|
|
|
|
|
|
| |
for a long time now.
Approved by: bde
|