summaryrefslogtreecommitdiff
path: root/sys/arch/i386/conf
AgeCommit message (Collapse)Author
2018-02-09Check for the existence of /bsd before trying to back it up to /obsd.Theo Buehler
Fixes 'make install' when /bsd is not present for some reason. ok rob florian, "fine with me" deraadt
2018-01-25Move common mutex implementations to a MI place.Martin Pieuchot
Archs not yet converted can to the jump by defining __USE_MI_MUTEX. ok visa@
2018-01-25Use a new LDFLAGS variable to pass "-melf_i386_obsd" on amd64.Martin Pieuchot
Makes the linker generate a correct i386 gap.o file. ok kettenis@, deraadt@
2017-12-20Switch x86 architectures to the common C mutex implementation.Martin Pieuchot
This is a step towards MI mutexes. ok kettenis@
2017-11-04Since rev 1.502 of rc(8) it creates a /bsd.booted hard link. At theFlorian Obser
end of rc we call reorder_kernel which creates a /obsd hard link to the same kernel. In the past obsd was only created when doing a manual make install in the kernel sources. There is no need for two backup hard links during boot, rearange the kernel Makefiles to restore previous behaviour and thus stopping reorder_kernel from scribbling over /obsd. Makes muscle memory of some kernel developers work again: /obsd can serve as a known good kernel; and there was much rejoycing... Discussed at length with benno, rpe, phessler and tb at p2k17. Seems like a good idea to deraadt. OK benno, phessler, rpe, tb
2017-10-24In ld scripts, an output section with no input sections is always markedPhilip Guenther
writable, so the stub gap.o has .rodata flagged as RW. Instead of letting that propagate to the final :rodata PT_LOAD section, force the flags on the section to 4 (==PF_R) in the PHDRS block. problem noted by mortimer@ ok deraadt@ kettenis@
2017-10-17Add a machine-independent implementation for the mplock.Visa Hankala
This reduces code duplication and makes it easier to instrument lock primitives. The MI mplock uses the ticket lock code that has been in use on amd64, i386 and sparc64. These are the architectures that now switch to the MI code. The lock_machdep.c files are unhooked from the build but not removed yet, in case something goes wrong. OK mpi@, kettenis@
2017-09-28When option DDB_STRUCTINFO was removed from the kernel, too much fromPatrick Wildt
the kernel makefiles was removed which lead to C files not being re- compiled when a dependency changed. This can lead to panics in odd places and generally a broken system. ok deraadt@
2017-09-12Remove option DDB_STRUCTINFO. Now that ddb(4) is CTF aware, similarMartin Pieuchot
functionnalities are available in GENERIC. ok jasper@, deraadt@, guenther@, dlg@
2017-08-28swap ualea for urngJasper Lievisse Adriaanse
2017-08-12Use ctfstrip(1) by default to strip kernels.Martin Pieuchot
ok deraadt@, jasper@
2017-08-03Remove duplicated commented out "dev/rasops/files.rasops" include.Frederic Cambus
OK deraadt@
2017-07-31Comment out non-crucial device drivers (xhci(4), wdc@pcmcia, and cd(4)Theo de Raadt
support. fd+xhci without ehci compat probably doesn't exist, and in the other cases alternatve install methods exist. This makes i386 floppies fit again after routing table changes.
2017-07-23permit kernel building with clang as the base compiler; ok kettenis@Christian Weisgerber
2017-07-18Stop automatically regenerating gap.o (and hence linking a new kernel)Theo Buehler
whenever make is issued. Only do this when there are actual source changes below /sys. This restores the behavior prior to the KARL implementation. Problem noticed and patiently explained by mpi implementation with a lot of help from espie ok mpi, espie, deraadt
2017-07-16Pass the linker from make environment to makegap.sh. This is (only)Visa Hankala
a partial solution to cross compiling the kernel with KARL. OK deraadt@ a while ago
2017-06-29put SYSTEM_SWAP_DEP out of its misery, it died in 1997, along with config.oldMarc Espie
"go for it" deraadt@
2017-06-25dull dependency for copying makegap.sh to obj, so that installsTheo de Raadt
without src and comp work. That is what we've designed for, but since we always have src and comp on our systems it is so easy to slide... problem first noted by rpe.
2017-06-22Generate a gap.link script, and use that to generate gap.o. On multi-ABITheo de Raadt
architectures we must also link against a gapdummy.o to repair the ABI of the resulting .o file. Woe is me. Also repair install: target to update the linkkit & hash when a kernel is installed. ok rpe tb mlarkin and tested by others also
2017-06-21Fill space between sections with traps, rather than nops.Theo de Raadt
2017-06-13newbsd: target which re-links a kernel. We cannot use the bsd: targetTheo de Raadt
since it has source dependencies, and relinking doesn't have any. Also the bsd: target is created by config(8)... worked on with rpe.
2017-06-11make vers.o not depend on gap.o using a trick, because it is piece ofTheo de Raadt
fiction participating only in the linkphase. tricks from rpe and espie
2017-06-11Use umask 077 instead of cp -p when installing the kernel as root.Alexander Bluhm
Otherwise owner of /bsd could be the build user with permissions inherited from the compile directory. OK deraadt@ tb@
2017-06-05The arm* architectures edit the ld.script, creating a copy in the compileTheo de Raadt
directories. Copy it in the same way on other architectures, for the same effect. Something upcoming will want that file there anyways.
2017-06-04Create gap.* with umask 007 instead of 077 to make kernel builds afterTheo Buehler
make release work without prior cleanup. discussed with deraadt
2017-06-03Create gap.S and gap.o with umask 077. Create lorder and bsd* with umask 007.Theo de Raadt
Prying eyes cannot look at the kernels in the compile directory. ok tb rpe, kernel developers seem unimpacted
2017-05-31Split early startup code out of locore.S into locore0.S. Adjust linkTheo de Raadt
run so that this locore0.o is always at the start of the executable. But randomize the link order of all other .o files in the kernel, so that their exec/rodata/data/bss segments land all over the place. Late during kernel boot, unmap the early startup code. As a result, the internal layout of every newly build bsd kernel is different from past kernels. Internal relative offsets are not known to an outside attacker. The only known offsets are in the startup code, which has been unmapped. Ramdisk kernels cannot be compiled like this, because they are gzip'd. When the internal pointer references change, the compression dictionary bloats and results in poorer compression. ok kettenis mlarkin visa, also thanks to tedu for getting me back to this
2017-05-28Build i386 kernels with -ffreestanding, matching amd64 and variousJonathan Gray
other platforms. ok visa@ kettenis@
2017-05-18enable acpisbs on i386 for old MacBooksJoshua Stein
tested by Jan Stary
2017-04-30Remove some KGDB leftovers.Martin Pieuchot
From Amit Kulkarni.
2017-04-30Unifdef KGDB.Martin Pieuchot
It doesn't compile und hasn't been working during the last decade. ok kettenis@, deraadt@
2017-01-21Move virtio config from files.pci to files.pciReyk Floeter
virtio itself is not PCI, it is a paravirtual bus on top of either PCI or MMIO (arm). This is the first step of moving the virtio files to dev/pv. No functional change. arm kernel changes tested by jsg@ and patrick@ no objections from sf@ mlarkin@
2017-01-13Enable vmmci(4)Reyk Floeter
OK mlarkin@
2017-01-13Add vmmci(4) (VMM control interface), a simple guest-side driver for vmm(4) VMsReyk Floeter
While we don't have ACPI in vmm(4), we need a simple way to shutdown and reboot VMs gracefully but the device also allows to add more direct communications between host and guest later. OK mlarkin@
2016-12-30Increase space for ramdisk inserts to match ftp(1) https growth.Theo de Raadt
2016-11-29Build kernel with DEBUG=-g by default.Martin Pieuchot
This will allow us to extract type informations from DWARF2 sections. It also makes developer life easier as debug information are now included in every object. Resulting kernels will be stripped using strip(1) instead of ld(1). Kernel build time increases by approximately 10%. However it is still possible to disable this by defining DEBUG="". ok kettenis@, bluhm@, natano@, jasper@, reyk@, deraadt@
2016-11-15Clean up the kernel Makefile's:Martin Natano
- Remove the 'lint' target. lint has been removed with OpenBSD 5.2. - Remove the 'tags' target. It does nothing of value. - Replace 'clean::' with 'clean:', as requested by espie and millert, and remove files from the 'clean' target, that are never generated. - Don't create a file called 'depend' in 'make depend', but just do nothing instead. ok mpi tb
2016-10-27We don't generate an eddep script for kernel builds nowadays. The lastMartin Natano
reference to eddep in the kernel Makefile I could find is in 4.3BSD, released some 30 years ago. ok tb millert
2016-10-24make cleandir should skip the version file; ok otto millertTheo de Raadt
2016-10-21vmm(4) for i386. Userland changes forthcoming. Note that for the time being,Mike Larkin
i386 hosts are limited to running only i386 guests, even if the underlying hardware supports amd64. This is a restriction I hope to lift moving forward, but for now please don't report problems running amd64 guests on i386 hosts. This was a straightforward port of the in-tree amd64 code plus the old rotted tree I had from last year for i386 support. Changes included converting 64-bit VMREAD/VMWRITE ops to 2x32-bit ops, and fixing treatment of the TSS, which differs on i386. ok deraadt@
2016-10-18put .openbsd.randomdata into rodata, since i386 can handle itTheo de Raadt
2016-10-15cleandir: target for kernel compile directoriesTheo de Raadt
ok natano
2016-10-14backout small errorTheo de Raadt
2016-10-14Kernel builds now happen in compile/CONFIG/obj@ -> /usr/obj/... [or ./obj/,Theo de Raadt
if srctree is not rooted at /usr/src]. As a result, stock GENERIC & RAMDISK kernels are commited to the tree, to ensure the src tree can be "readonly" during builds, with all writes occuring inside the obj space. config -b options are handled by ../Makefile.inc. The canonical new way to configure one of these kernels is: % cd /sys/arch/amd64/compile/GENERIC.MP % doas make obj % make config % make % doas cp obj/bsd /bsd The build infrastructure will use this new mechanism in a de-escalation way using BUILDUSER. Much help from natano and tb.
2016-09-24Add -Wno-pointer-sign to all our gcc4 architectures.Mark Kettenis
ok patrick@ (for armv7), deraadt@
2016-09-12Enable uwacom(4) where uts(4) is already present.Martin Pieuchot
2016-09-04bha depends on the deleted aha.h, so it will follow it into the atticTed Unangst
2016-09-03the src tree is growing too large. delete the aha and ahb drivers inTed Unangst
order to make room for llvm. er, the llvm makefiles. er, some of them.
2016-09-03remove cnw driver. it was never enabled anywhere except on amd64 (and onlyTed Unangst
there by accident) where it hasn't seen much use...
2016-09-03Make .openbsd.randomdata section RO. Highlight is that the stack protectorTheo de Raadt
cookie becomes readonly, spraying over it in KVA becomes more difficult. amd64 version from guenther, i386 version by myself ok guenther kettenis