#
67d39748 |
| 24-May-2015 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Introduce a new module linux_common.ko which is intended for the following primary purposes:
1. Remove the dependency of linsysfs and linprocfs modules from linux.ko, which will be architecture spec
Introduce a new module linux_common.ko which is intended for the following primary purposes:
1. Remove the dependency of linsysfs and linprocfs modules from linux.ko, which will be architecture specific on amd64.
2. Incorporate into linux_common.ko general code for platforms on which we'll support two Linuxulator modules (for both instruction set - 32 & 64 bit).
3. Move malloc(9) declaration to linux_common.ko, to enable getting memory usage statistics properly.
Currently linux_common.ko incorporates a code from linux_mib.c and linux_util.c and linprocfs, linsysfs and linux kernel modules depend on linux_common.ko.
Temporarily remove dtrace garbage from linux_mib.c and linux_util.c
Differential Revision: https://reviews.freebsd.org/D1072 In collaboration with: Vassilis Laganakos.
Reviewed by: trasz
show more ...
|
#
26cf41d6 |
| 24-May-2015 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Remove stale comment about a signal trampoline which is moved to the shared page at r219609.
Differential Revision: https://reviews.freebsd.org/D1063 Reviewed by: trasz
|
#
0020bdf1 |
| 24-May-2015 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Put linux_platform into the vdso to avoid copying it onto the stack at every exec.
Differential Revision: https://reviews.freebsd.org/D1062 Reviewed by: trasz
|
#
bdc37934 |
| 24-May-2015 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Implement vdso - virtual dynamic shared object. Through vdso Linux exposes functions from kernel with proper DWARF CFI information so that it becomes easier to unwind through them. Using vdso is a ma
Implement vdso - virtual dynamic shared object. Through vdso Linux exposes functions from kernel with proper DWARF CFI information so that it becomes easier to unwind through them. Using vdso is a mandatory for a thread cancelation && cleanup on a modern glibc.
Differential Revision: https://reviews.freebsd.org/D1060
show more ...
|
#
af682d48 |
| 24-May-2015 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Some style(9) && whitespaces fixes. No functional changes.
Differential Revision: https://reviews.freebsd.org/D1041 Reviewed by: emaste
|
#
81338031 |
| 24-May-2015 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Switch linuxulator to use the native 1:1 threads.
The reasons: 1. Get rid of the stubs/quirks with process dethreading, process reparent when the process group leader exits and close to this p
Switch linuxulator to use the native 1:1 threads.
The reasons: 1. Get rid of the stubs/quirks with process dethreading, process reparent when the process group leader exits and close to this problems on wait(), waitpid(), etc. 2. Reuse our kernel code instead of writing excessive thread managment routines in Linuxulator.
Implementation details:
1. The thread is created via kern_thr_new() in the clone() call with the CLONE_THREAD parameter. Thus, everything else is a process. 2. The test that the process has a threads is done via P_HADTHREADS bit p_flag of struct proc. 3. Per thread emulator state data structure is now located in the struct thread and freed in the thread_dtor() hook. Mandatory holdig of the p_mtx required when referencing emuldata from the other threads. 4. PID mangling has changed. Now Linux pid is the native tid and Linux tgid is the native pid, with the exception of the first thread in the process where tid and pid are one and the same.
Ugliness:
In case when the Linux thread is the initial thread in the thread group thread id is equal to the process id. Glibc depends on this magic (assert in pthread_getattr_np.c). So for system calls that take thread id as a parameter we should use the special method to reference struct thread.
Differential Revision: https://reviews.freebsd.org/D1039
show more ...
|
Revision tags: release/10.1.0 |
|
#
1b833d53 |
| 13-Aug-2014 |
Alexander V. Chernikov <melifaro@FreeBSD.org> |
Sync to HEAD@r269943.
|
Revision tags: release/9.3.0 |
|
#
2dedc128 |
| 17-Jun-2014 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Revert r266925 as it can lead to instant panic at fexecve():
To allow to run the interpreter itself add a new ELF branding type.
Pointed out by: kib, mjg
|
#
5f56da18 |
| 31-May-2014 |
Dmitry Chagin <dchagin@FreeBSD.org> |
To allow to run the interpreter itself add a new ELF branding type. Allow Linux ABI to run ELF interpreter.
MFC after: 3 days
|
#
3b8f0845 |
| 28-Apr-2014 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge head
|
#
84e51a1b |
| 23-Apr-2014 |
Alan Somers <asomers@FreeBSD.org> |
IFC @264767
|
#
485ac45a |
| 04-Feb-2014 |
Peter Grehan <grehan@FreeBSD.org> |
MFC @ r259205 in preparation for some SVM updates. (for real this time)
|
Revision tags: release/10.0.0 |
|
#
654957c2 |
| 19-Nov-2013 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Merge head up to r258343.
|
#
3d271aaa |
| 14-Nov-2013 |
Ed Maste <emaste@FreeBSD.org> |
x86: Allow users to change PSL_RF via ptrace(PT_SETREGS...)
Debuggers may need to change PSL_RF. Note that tf_eflags is already stored in the signal context during signal handling and PSL_RF previo
x86: Allow users to change PSL_RF via ptrace(PT_SETREGS...)
Debuggers may need to change PSL_RF. Note that tf_eflags is already stored in the signal context during signal handling and PSL_RF previously could be modified via sigreturn, so this change should not provide any new ability to userspace.
For background see the thread at: http://lists.freebsd.org/pipermail/freebsd-i386/2007-September/005910.html
Reviewed by: jhb, kib Sponsored by: DARPA, AFRL
show more ...
|
Revision tags: release/9.2.0 |
|
#
d1d01586 |
| 05-Sep-2013 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge from head
|
#
40f65a4d |
| 07-Aug-2013 |
Peter Grehan <grehan@FreeBSD.org> |
IFC @ r254014
|
#
552311f4 |
| 17-Jul-2013 |
Xin LI <delphij@FreeBSD.org> |
IFC @253398
|
#
cfe30d02 |
| 19-Jun-2013 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Merge fresh head.
|
Revision tags: release/8.4.0 |
|
#
d127f153 |
| 09-May-2013 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Retire write-only PCB_GS32BIT pcb flag on amd64.
|
#
d241a0e6 |
| 26-Feb-2013 |
Xin LI <delphij@FreeBSD.org> |
IFC @247348.
|
#
d9a44755 |
| 08-Feb-2013 |
David E. O'Brien <obrien@FreeBSD.org> |
Sync with HEAD.
|
#
d825ce0a |
| 29-Jan-2013 |
John Baldwin <jhb@FreeBSD.org> |
Reduce duplication between i386/linux/linux.h and amd64/linux32/linux.h by moving bits that are MI out into headers in compat/linux.
Reviewed by: Chagin Dmitry dmitry | gmail MFC after: 2 weeks
|
Revision tags: release/9.1.0 |
|
#
9823d527 |
| 10-Oct-2012 |
Kevin Lo <kevlo@FreeBSD.org> |
Revert previous commit...
Pointyhat to: kevlo (myself)
|
#
a10cee30 |
| 09-Oct-2012 |
Kevin Lo <kevlo@FreeBSD.org> |
Prefer NULL over 0 for pointers
|
#
38f1b189 |
| 26-Apr-2012 |
Peter Grehan <grehan@FreeBSD.org> |
IFC @ r234692
sys/amd64/include/cpufunc.h sys/amd64/include/fpu.h sys/amd64/amd64/fpu.c sys/amd64/vmm/vmm.c
- Add API to allow vmm FPU state init/save/restore.
FP stuff discussed with: kib
|