summaryrefslogtreecommitdiffstats
path: root/lkm/linux
Commit message (Collapse)AuthorAgeFilesLines
* Merge 1.8.2.1 into -current.jkh1997-05-011-2/+2
|
* Make MOD_* macros almost consistent:dufault1997-04-061-2/+3
| | | | | | | | | | | | | | | | | | | | Use the name argument almost the same in all LKM types. Maintain the current behavior for the external (e.g., modstat) name for DEV, EXEC, and MISC types being #name ## "_mod" and SYCALL and VFS only #name. This is a candidate for change and I vote just the name without the "_mod". Change the DISPATCH macro to MOD_DISPATCH for consistency with the other macros. Add an LKM_ANON #define to eliminate the magic -1 and associated signed/unsigned warnings. Add MOD_PRIVATE to support wcd.c's poking around in the lkm structure. Change source in tree to use the new interface. Reviewed by: Bruce Evans
* Revert $FreeBSD$ back to $Id$peter1997-02-224-4/+4
|
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-144-4/+4
| | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
* Add a man page for linux(8) (loads the Linux emulator kernel module).mpp1997-01-102-2/+47
|
* Prepare kernel to take advantage of "branded" ELF binaries.sos1996-10-161-4/+4
|
* `struct linker_set execsw_set' was declared as const and pointers in itbde1996-09-031-2/+2
| | | | | | | were declared as non-const. This is backwards (_lkm_exec() changes the pointers but all the target `struct execsw's are const). Fixed this and poisoned related declarations to match and removed the bogus casts that hid the bug.
* Fixed the `machine' link. It pointed to the wrong place, and was createdbde1996-06-251-6/+9
| | | | | | | | | too late to be used in all cases. It should probably be created (early) in bsd.kmod.mk for all LKMs. Use cc instead of cpp | as for the same reasons as in the kernel makefile. CFLAGS isn't split up as well as in the kernel makefile, but cc doesn't pass compiler warning flags to cpp, so there is no need to split it.
* linux_interp now moved into sys/i386/linux/linux_sysvec.c, but stillpeter1996-03-101-6/+2
| | | | connected at load and unload time from here.
* First attempt at FreeBSD & Linux ELF support.sos1996-03-102-3/+15
| | | | | | | | | | | | | | | | | Compile and link a new kernel, that will give native ELF support, and provide the hooks for other ELF interpreters as well. To make native ELF binaries use John Polstras elf-kit-1.0.1.. For the time being also use his ld-elf.so.1 and put it in /usr/libexec. The Linux emulator has been enhanced to also run ELF binaries, it is however in its very first incarnation. Just get some Linux ELF libs (Slackware-3.0) and put them in the prober place (/compat/linux/...). I've ben able to run all the Slackware-3.0 binaries I've tried so far. (No it won't run quake yet :)
* Update the linux lkm to use the new file list and build routine.peter1996-03-021-5/+25
| | | | This is a bit of a kludge and needs more work.
* Add missing ${DESTDIR} to afterinstall: target.rgrimes1996-01-271-2/+2
|
* No longer generate empty opt_sysvipc.h, and no longer issue -DSYSVSHM etcpeter1996-01-081-7/+3
| | | | | for the CFLAGS. Now, it tracks whatever the booted kernel has rather than being specifying what features your kernel has at lkm build time.
* Add opt_sysvipc.h rules similar as in ibcs2 Makefileache1996-01-061-2/+6
| | | | (make fails in old case)
* Added SYSVSHM definesos1995-12-291-2/+2
|
* Changed the first (name) arg of MOD_DEV(), MOD_EXEC() and MOD_MISC()bde1995-11-141-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from a string to an identifier so that it can be used to generate declarations and strings. It's much easier to stringize an identifier than to identifize a string. A uniform naming scheme must be used for the automatically generated things to apply. This is a feature. Used the module identifer to generate prototypes for the module load, unload and stat functions. Removed the few prototypes for these that already existed. Used the module identifier to generate a unique struct tag in MOD_DEV(). This should probably be done for all the MOD_*() macros. Moved the trailing semicolon from the MOD_*() macro definitions to the macro invocations that didn't already (bogusly) have it. Staticized the module load and unload functions. Added function return types for the module load, unload and stat functions. lkm/ibcs2/ibcs2.c: Included <sys/sysproto.h> to get everything prototyped. Cleaned up #includes. lkm/ibcs2/ipfw.c: Cleaned up #includes. lkm/linux/linux.c: The module name had to change from "linux_emulator" to "linux_mod" to be automatically generated. Cleaned up #includes. lkm/syscons/*/*_saver.c: Completed delcarations of function pointers. sys/i386/isa/atapi.c: The module name had to change from "atapi" to "atapi_mod" to be automatically generated. sys/i386/isa/wcd.c: Used the fixed MOD_DEV(). This module has two devices and expanded the macro in the source instead of fixing it. The module names had to change from "wcd" and "rwcd" to "wcd_mod" and "rwcd_mod" to be automatically generated. sys/pccard/pcic.c: The module name had to change from "pcic" to "pcic_mod" to be automatically generated.
* Replaced nosys() by lkm_nullcmd(). Always call lkm load/unload/statbde1995-11-131-2/+2
| | | | | functions instead of skipping the call if the function is nosys(). nosys() returned the wrong value as well as having the wrong type.
* Do a pass over the broken LKM's and update them to use the "new"peter1995-10-282-4/+4
| | | | | | | | | | | | | | | convention of having their entry point named "<modname>_mod"". Symorder is enforcing this when the current bsd.kmod.mk is installed. I've not tested all these, but at least they all compile now. Reattach them to the makefile. Note that the change that I made to symorder needs to be compiled and installed before any LKM's will work - the last version was corrupting the relocation tables. A "make world" will to this, but if you manually run a make on the lkm's you'll need to take care of it by hand.
* First incarnation of our Linux emulator or rather compatibility code.sos1995-06-253-0/+77
This first shot only incorporaties so much functionality that DOOM can run (the X version), signal handling is VERY weak, so is many other things. But it meets my milestone number one (you guessed it - running DOOM). Uses /compat/linux as prefix for loading shared libs, so it won't conflict with our own libs. Kernel must be compiled with "options COMPAT_LINUX" for this to work.
OpenPOWER on IntegriCloud