Home | History | Annotate | Download | only in common
History log of /src/sys/compat/linux32/common/linux32_mod.c
RevisionDateAuthorComments
 1.15  25-Nov-2021  ryo The default name of the `exec_setup_stack' function for linux32 should be `linux32_exec_setup_stack',
and it should be defined in each arch.
declaration of linux32_exec_setup_stack() in linux32/amd64 has been removed because it does not exist.

NFC.
 1.14  21-Mar-2020  pgoyette Deal with having to teardown sysctl entries in multiple sub-trees.

(This used to work, but I broke it recently.)
 1.13  16-Mar-2020  pgoyette Use the module subsystem's ability to process SYSCTL_SETUP() entries to
automate installation of sysctl nodes.

Note that there are still a number of device and pseudo-device modules
that create entries tied to individual device units, rather than to the
module itself. These are not changed.
 1.12  27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.11  10-Dec-2017  kre branches: 1.11.2; 1.11.4;

Finally (hopefully) return completely to the state where compat_linux is
enabled by default.

While here make it possible to enable this if already enabled, or disable
if already disabled, without error. Some minor KNF.
 1.10  08-Dec-2017  kre Finish the previous change - as well as setting the default for these
compat modules back to enabled, stop forcing it to switch back to
disabled any time the module is init'd (which is truly barbaric behaviour.)
 1.9  01-Dec-2017  joerg Unbreak Linux emulation by default. While not loading it automatically
is somewhat sensible, breaking functionality of GENERIC is not and has
been objected to on a regular base.
 1.8  29-Sep-2017  maxv Remove compat_linux32 from the autoload list and add a enable/disable
sysctl, like compat_linux.
 1.7  03-Dec-2015  pgoyette Update dependencies - compat_linux32 requires compat_netbsd32_sysvipc
 1.6  22-Jul-2014  maxv branches: 1.6.4;
1) On 64bit systems, don't add the 32bit execsw[] to the global exec array.
exec_elf32 works on 32bit systems only, and will crash 32bit binaries on
64bit systems.
2) Now that exec_elf32 is dormant, we can give the native ELF loaders the
highest priority.

Binaries will load faster now (system boot, compilation, etc.).

With the help of njloy@. Discussed a bit on tech-kern@, no disagreement.
 1.5  07-Mar-2014  christos branches: 1.5.2;
c99 initializers for struct execsw
 1.4  19-Sep-2013  christos exec modules need to be of the exec kind
 1.3  07-Jul-2010  chs branches: 1.3.8; 1.3.18; 1.3.22;
many changes for COMPAT_LINUX:
- update the linux syscall table for each platform.
- support new-style (NPTL) linux pthreads on all platforms.
clone() with CLONE_THREAD uses 1 process with many LWPs
instead of separate processes.
- move the contents of sys__lwp_setprivate() into a new
lwp_setprivate() and use that everywhere.
- update linux_release[] and linux32_release[] to "2.6.18".
- adjust placement of emul fork/exec/exit hooks as needed
and adjust other emul code to match.
- convert all struct emul definitions to use named initializers.
- change the pid allocator to allow multiple pids to refer to the same proc.
- remove a few fields from struct proc that are no longer needed.
- disable the non-functional "vdso" code in linux32/amd64,
glibc works fine without it.
- fix a race in the futex code where we could miss a wakeup after
a requeue operation.
- redo futex locking to be a little more efficient.
 1.2  03-Dec-2008  ad branches: 1.2.4; 1.2.6; 1.2.8; 1.2.12; 1.2.14; 1.2.16;
PR port-amd64/40091 compat_linux32 module loading = panic due to missing syms
 1.1  19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.2.16.1  05-Mar-2011  rmind sync with head
 1.2.14.1  17-Aug-2010  uebayasi Sync with HEAD.
 1.2.12.3  11-Aug-2010  yamt sync with head.
 1.2.12.2  04-May-2009  yamt sync with head.
 1.2.12.1  03-Dec-2008  yamt file linux32_mod.c was added on branch yamt-nfs-mp on 2009-05-04 08:12:23 +0000
 1.2.8.2  19-Jan-2009  skrll Sync with HEAD.
 1.2.8.1  03-Dec-2008  skrll file linux32_mod.c was added on branch nick-hppapmap on 2009-01-19 13:17:32 +0000
 1.2.6.2  17-Jan-2009  mjf Sync with HEAD.
 1.2.6.1  03-Dec-2008  mjf file linux32_mod.c was added on branch mjf-devfs2 on 2009-01-17 13:28:45 +0000
 1.2.4.2  13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.2.4.1  03-Dec-2008  haad file linux32_mod.c was added on branch haad-dm on 2008-12-13 01:13:57 +0000
 1.3.22.1  18-May-2014  rmind sync with head
 1.3.18.2  03-Dec-2017  jdolecek update from HEAD
 1.3.18.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.8.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.5.2.1  10-Aug-2014  tls Rebase.
 1.6.4.1  27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.11.4.2  08-Apr-2020  martin Merge changes from current as of 20200406
 1.11.4.1  10-Jun-2019  christos Sync with HEAD
 1.11.2.5  24-Jan-2019  pgoyette Restore the MD-vs-REQ requirements structure, just in case
 1.11.2.4  24-Jan-2019  pgoyette Clean up and reorganize the requirements for compat_linux32 module
 1.11.2.3  12-Sep-2018  pgoyette Typo - missing trailing quote
 1.11.2.2  12-Sep-2018  pgoyette Adjust module requirements to reflect the new more granular modules
 1.11.2.1  11-Mar-2018  pgoyette Update module dependencies

RSS XML Feed