summaryrefslogtreecommitdiffstats
path: root/sys/boot
Commit message (Collapse)AuthorAgeFilesLines
* Add support for reading an additional loader configuration file. By default,gordon2002-05-243-1/+70
| | | | | | | | | | | | | | | this is called /boot/nextboot.conf. This file is required to have it's first line be nextboot_enable="YES" for it to be read. Also, this file is rewritten by the loader to nextboot_enable="NO"<space> after it is read. This makes it so the file is read exactly once. Finally, the nextboot.conf is removed shortly after the filesystems are mounted r/w. Caution should be taken as you can shoot yourself in the foot. This is only the loader piece. There will be a tool called nextboot(8) that will manage the nextboot.conf file for you. It is coming shortly. Reviewed by: dcs Approved by: jake (mentor)
* Fixed to conflict labels.nyan2002-05-211-3/+3
| | | | Submitted by: Kaho Toshikazu <kaho@elam.kais.kyoto-u.ac.jp>
* MFi386: revision 1.22nyan2002-05-211-9/+8
|
* MD ficl files for sparc64.jake2002-05-192-0/+513
|
* o Remove namespace pollution from param.h:marcel2002-05-198-0/+12
| | | | | | | | | | | - Don't include ia64_cpu.h and cpu.h - Guard definitions by _NO_NAMESPACE_POLLUTION - Move definition of KERNBASE to vmparam.h o Move definitions of IA64_RR_{BASE|MASK} to vmparam.h o Move definitions of IA64_PHYS_TO_RR{6|7} to vmparam.h o While here, remove some left-over Alpha references.
* An almost mechanical sweep to replace C++ style comments with Cmarcel2002-05-1916-614/+485
| | | | | style comments. This is not an attempt to conform to style(9). Such has lower priority.
* Fix one of the va_arg() with less than int sized type probelms.phk2002-05-181-1/+1
|
* More s/file system/filesystem/gtrhodes2002-05-166-7/+7
|
* DEV_BSIZE lives in sys/param.h and not in machine/param.h anymore.jhay2002-05-151-1/+1
|
* Even more BBSIZE related breakage.ru2002-05-141-0/+1
|
* Fixed to build for GCC 3.1nyan2002-05-146-17/+16
|
* Add -ffreestanding to CFLAGS.nyan2002-05-141-1/+1
|
* Align CLEANFILES with revision 1.25 changes.ru2002-05-132-2/+2
|
* Fixed CLEANFILES after bsd.lib.mk sweep.ru2002-05-132-2/+2
|
* Removed now unused INTERNALSTATICLIB.ru2002-05-136-17/+0
| | | | | INTERNALLIB now implies NOPIC and NOPROFILE. Removed gratuitous NOMAN.
* Major cleanup of bsd.lib.mk.ru2002-05-134-16/+0
| | | | | | | Get rid of the INTERNALSTATICLIB knob and just use plain INTERNALLIB. INTERNALLIB now means to build static library only and don't install anything. Added a NOINSTALLLIB knob for libpam/modules. To not build any library at all, just do not set LIB.
* Match the default newfs UFS block size.obrien2002-05-131-1/+1
|
* Saved 176 bytes by compiling with -fno-guess-branch-probability. Thebde2002-05-122-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | default of -fguess-branch-probablility causes time optimizations (?) like rewriting `if (foo) x++;' as `if (!foo) goto forth; back: ; ...; forth: x++; goto back;". This is pessimizes space especially well on i386's because one short branch gets converted to 2 long ones. Removed -fno-align-foo since it is implied by -Os. Previous commit messages seem to have overstated the new alignment bugs in gcc. The only case that affects boot2 is that -fno-align-functions (or equivalently -falign-functions=1) actually gives -falign-functions=2. This is caused by FUNCTION_BOUNDARY being 2 (bytes) instead of 1. The default case where the optimization level is 1 and no alignment options are given is more broken. All alignments are minimal, modulo the bug in FUNCTION_BOUNDARY. This is caused by toplev.c setting defaults too early. Some hacks in previous commits ar not needed now, but may as well be kept until gcc is fixed. The previous on in the Makefile saved 96 bytes of text due to the wrong FUNCTION_BOUNDARY and 32 bytes of data due to unrelated bloat in the alignment of large objects. There aren't even any options to control alignment of data.
* Back out last commit. I expect our bsd.*.mk gods to remove the need forobrien2002-05-1210-0/+27
| | | | | defining so many extra things in addition to INTERNALLIB. We don't like repetitive C code and we shouldn't for make code either.
* Attempt to not crash and burn on UltraSPARC III machines; the cpuid propertyjake2002-05-111-1/+2
| | | | is named differently.
* Save about 60 bytes by #define memcpy __builtin_memcpy and removingpeter2002-05-112-26/+6
| | | | | the function we provided. Restore the Keyboard: yes/no printf for the probe diagnostics. We end up with 40 bytes free.
* Reconnect boot2. I'm sure I'll regret this though. :-)peter2002-05-111-1/+1
|
* Use a crowbar and duct-tape to make boot2 fit again. This gets it downpeter2002-05-114-2/+14
| | | | | | | | to 4 bytes free. I removed a printf (the Keyboard yes/no) since it is of marginal value and sed'ed the generated asm output to remove the unwanted aligns. There's probably a better way to gain a few extra bytes than losing the printf. Shortening strings is probably a better option but this should get us over the hurdle.
* Change the disk probing so that it will actually find disks otherjake2002-05-113-42/+136
| | | | | | | | | | | | | | | | | than the first one on a controller, and work for secondary controllers. Due to the prom not having nodes for each disk, but a catch-all one, we have to iterate over each device, trying to open it to determine whether it is actually present. Since probing this way takese some time (and spews some spurious warnings), it should maybe be short-circuited if we use the device we were booted from. Implement lazy device probing, and correct slice/partiniton handling in the ofwd_open() code. With this, I can now actually boot a kernel from disk, and the loader does not create unnecessary delays. Submitted by: tmm
* NOPIC, NOPROFILE, NOMAN, and INTERNALSTATICLIB are redundant when usingobrien2002-05-1110-27/+0
| | | | INTERNALLIB now.
* -ffreestanding is the word.obrien2002-05-1022-21/+29
| | | | | (also resort some CFLAGS such that the more "important" value are first so they are easier to see)
* - Axe -mpreferred-stack-boundary=2 as -Os turns this on by default.jhb2002-05-102-4/+4
| | | | | | | | | | | | | | - Axe -fdata-sections as turning it on or off makes no difference. If it did make a difference it would serve to bloat boot2 even further with extra padding. - Axe -fforce-addr. This gets us 32 bytes so we are down to only being 64-bytes over. We still can't compile this with gcc 3.1. The problem seems to be that the -fno-align-foo options don't actually work. Comparing the new and old output it turns out that gcc is 4-byte padding all the functions and labels and what not despite the passed in arguments thus adding the unfortunate bloat to boot2.
* We don't need bootinfo any more, and sparc64 doesn't have it anyways.obrien2002-05-101-1/+0
|
* Don't be redundant.obrien2002-05-101-1/+1
|
* -ffreestanding is the word for /sys.obrien2002-05-106-17/+18
|
* Turn off boot2 -- it gained over 96 bytes dieting on the in-tree Gcc 3.1.obrien2002-05-101-1/+1
|
* Ficl doesn't build on sparc64.obrien2002-05-091-0/+2
|
* Partical style cleanup.obrien2002-05-091-19/+17
|
* Replace /kernel with /boot/kernel/kernel.joe2002-05-092-2/+2
| | | | | PR: docs/37757 Submitted by: Hiten Pandya <hiten@uk.FreeBSD.org>
* Rename the file used to specify the nextboot to make it clear that thiswes2002-04-261-1/+1
| | | | | | | is a loader configuration file and can be used for more than just a kernel name. Submitted by: Gordon Tetlow <gordont@gnf.org>
* A long, long time ago, msmith introduced vfs.root.mountfromdcs2002-04-261-0/+2
| | | | | | | loader variable, which let users specify the root mount point the exact way one does after booting the kernel. Let's take this opportunity to document it...
* Add a -k option to reboot to specify the kernel to boot next timewes2002-04-261-1/+1
| | | | | | | | | | | | | | | | around. If the kernel boots successfully, the record of this kernel is erased, it is intended to be a one-shot option for testing kernels. This could be improved by having the loader remove the record of the next kernel to boot, it is currently removed in /etc/rc immediately after disks are mounted r/w. I'd like to MFC this before the 4.6 freeze unless there is violent objection. Reviewed by: Several on IRC MFC after: 4 days
* MFi386: revision 1.56nyan2002-04-251-18/+6
|
* MFi386: revision 1.8nyan2002-04-251-5/+3
|
* Split file system setup code out into a function called mount.jake2002-04-241-50/+109
| | | | Implement vsnprintf. Implement panic in terms of it.
* Add support for loading files other than /boot/loader. Useful if you'rejake2002-04-241-79/+234
| | | | | | loader is screwed and you want loader.old. Rewrite the scaled down printf so it actually works right, and add support for more formats.
* Add an exit function.jake2002-04-241-3/+21
|
* Add -Wno-unused.jake2002-04-241-1/+1
|
* memcpy, memset -> bcopy, bzero.jake2002-04-241-32/+28
|
* Clean up elf loading to not make assumptions about the ordering of sections.jake2002-04-241-37/+18
| | | | | Don't load the symbol table; this is only needed for loading kernels and we load the loader.
* Remove xfsread. Just call fsread directly.jake2002-04-241-16/+5
|
* Remove a bunch of unused variables, functions and macros. Allocate storagejake2002-04-241-174/+11
| | | | statically instead of using a faked up malloc.
* Improve self-relocation:marcel2002-04-212-210/+270
| | | | | | | | | | | | | | | | | | | o We don't expect the PLT relocations to follow the .rela section anymore. We still assume that PLT relocations are long formed, o Document register usage, o Improve ILP, o Fix the FPTR relocation by creating unique OPDs per function. Comparing functions is valid now, o The IPLT relocation naturally handles the addend. Deal with it. We ignore the addend for FPTR relocations for now. It's not at all clear what it means anyway. Fix ABI misinterpretation: o For Elf_Rela relocations, the addend is explicit and should not be loaded from the memory address we're relocating. Only do that for Elf_Rel relocations (ie the short form). o DIR64LSB is not the same as REL64LSB. DIR64LSB applies to a symbol (S+A), whereas REL64LSB applies to the base address (BD+A),
* o Use our own elf2aout now.obrien2002-04-211-2/+2
| | | | o Generalize a little.
* Allocate sufficient pages to hold the bootinfo block and stopmarcel2002-04-192-14/+20
| | | | hardwiring the location.
OpenPOWER on IntegriCloud