#
84aa58ab |
| 31-Oct-2000 |
Andrew Gallatin <gallatin@FreeBSD.org> |
fix the sigaltstack hack by lowering the stack size to the original value if the request was for less than MINSIGSTKSZ (in which case we "round up"). discussed with: marcel
|
#
242fae60 |
| 17-Oct-2000 |
Andrew Gallatin <gallatin@FreeBSD.org> |
Some linux apps, such as IBM's JDK 1.3, will attempt to mmap thread stacks near the top of their address space. If their TOS is greater than vm_maxsaddr, vm_map_growstack() will confuse the thread s
Some linux apps, such as IBM's JDK 1.3, will attempt to mmap thread stacks near the top of their address space. If their TOS is greater than vm_maxsaddr, vm_map_growstack() will confuse the thread stack with the process stack and deliver a SEGV if they attempt to grow the thread stack past their current stacksize rlimit. To avoid this, adjust vm_maxsaddr upwards to reflect the current stacksize rlimit rather than the maximum possible stacksize. It would be better to adjust the mmap'ed region, but some apps (again, IBM's JDK 1.3) do not check mmap's return value..
This commit (in conjunction with setting MINSIGSTKSZ to 2048 & rebuilding your kernel and modules) will get IBM's JDK 1.3 working with FreeBSD at least well enough to run many of the example applets.
Reviewed by: marcel Tested by: sto@stat.duke.edu, many others on freebsd-java@
show more ...
|
#
931a7258 |
| 13-Oct-2000 |
Andrew Gallatin <gallatin@FreeBSD.org> |
This is the first of 3 commits that will get IBM's JDK 1.3 working with FreeBSD (not including the MINSIGSTKSZ issue, which belongs to Marcel). Due to time constraints, I'm going to space them out o
This is the first of 3 commits that will get IBM's JDK 1.3 working with FreeBSD (not including the MINSIGSTKSZ issue, which belongs to Marcel). Due to time constraints, I'm going to space them out over a few days.
This fixes two problems with linux_sigaltstack()
o ss == 0 is perfectly valid use, so do not fail in this case.
o Fix flag handling: - Our SS_DISABLE is 4, linux's is 2, so we need conversion routines. These conversion routines will be needed by linux_rt_sendsig() and linux_rt_sigreturn (forthcoming), so they are not static. - Linux's flag 0 historically meant SS_ONSTACK according to a comment in their linux/kernel/signal.c file.
Among other things, this fixes a warning from Sun's JDK 1.3: "Java HotSpot(TM) Client VM warning: cannot uninstall alt signal stack"
Reviewed by: marcel Tested by: sto@stat.duke.edu, many others on freebsd-java@
show more ...
|
Revision tags: release/4.1.1_cvs |
|
#
dee4ec33 |
| 06-Sep-2000 |
Marcel Moolenaar <marcel@FreeBSD.org> |
When sigaltstack is called with a stack size that's not smaller than LINUX_MINSIGSTKSZ but smaller than MINSIGSTKSZ, cheat and pass MINSIGSTKSZ to the kernel. This is a workaround.
Submitted through
When sigaltstack is called with a stack size that's not smaller than LINUX_MINSIGSTKSZ but smaller than MINSIGSTKSZ, cheat and pass MINSIGSTKSZ to the kernel. This is a workaround.
Submitted through: nate
show more ...
|
#
bc34729c |
| 25-Aug-2000 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Fix typo in license.
|
#
146aad74 |
| 22-Aug-2000 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Collect the MD syscalls from /sys/compat/linux here. Since this is a new file, fix most of the style bugs at the same time.
|
Revision tags: release/8.0.0_cvs, release/8.0.0 |
|
#
874108ae |
| 12-Nov-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
MFC @199204
|
#
f12c0348 |
| 28-Oct-2009 |
John Baldwin <jhb@FreeBSD.org> |
Fix some problems with effective mmap() offsets > 32 bits. This was partially fixed on amd64 earlier. Rather than forcing linux_mmap_common() to use a 32-bit offset, have it accept a 64-bit file of
Fix some problems with effective mmap() offsets > 32 bits. This was partially fixed on amd64 earlier. Rather than forcing linux_mmap_common() to use a 32-bit offset, have it accept a 64-bit file offset. This offset is then passed to the real mmap() call. Rather than inventing a structure to hold the normal linux_mmap args that has a 64-bit offset, just pass each of the arguments individually to linux_mmap_common() since that more closes matches the existing style of various kern_foo() functions.
Submitted by: Christian Zander @ Nvidia MFC after: 1 week
show more ...
|
#
09c817ba |
| 03-Jul-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- MFC
|
#
7c020cbb |
| 26-Jun-2009 |
John Baldwin <jhb@FreeBSD.org> |
Return ENOSYS instead of EINVAL for invalid function codes to match the behavior of Linux.
Reported by: Alexander Best alexbestms of math.uni-muenster.de Approved by: re (kib)
|
Revision tags: release/7.2.0_cvs, release/7.2.0 |
|
#
1829d5da |
| 12-Mar-2009 |
Warner Losh <imp@FreeBSD.org> |
Update the projects tree to a newer FreeBSD current.
|
#
99b7f1a1 |
| 18-Feb-2009 |
Konstantin Belousov <kib@FreeBSD.org> |
Adapt linux emulation to use cv for vfork wait.
Submitted by: Takahiro Kurosawa <takahiro.kurosawa gmail com> PR: kern/131506
|
Revision tags: release/6.4.0_cvs, release/6.4.0 |
|
#
ab0d10f6 |
| 11-Nov-2008 |
Ed Schouten <ed@FreeBSD.org> |
Several cleanups related to pipe(2).
- Use `fildes[2]' instead of `*fildes' to make more clear that pipe(2) fills an array with two descriptors.
- Remove EFAULT from the manual page. Because of t
Several cleanups related to pipe(2).
- Use `fildes[2]' instead of `*fildes' to make more clear that pipe(2) fills an array with two descriptors.
- Remove EFAULT from the manual page. Because of the current calling convention, pipe(2) raises a segmentation fault when an invalid address is passed.
- Introduce kern_pipe() to make it easier for binary emulations to implement pipe(2).
- Make Linux binary emulation use kern_pipe(), which means we don't have to recover td_retval after calling the FreeBSD system call.
Approved by: rdivacky Discussed on: arch
show more ...
|
Revision tags: release/7.0.0_cvs, release/7.0.0 |
|
#
865df544 |
| 11-Feb-2008 |
Jung-uk Kim <jkim@FreeBSD.org> |
Fix Linux mmap with MAP_GROWSDOWN flag.
Reported by: Andriy Gapon (avg at icyb dot net dot ua) Tested by: Andriy Gapon (avg at icyb dot net dot ua) Pointyhat: me MFC after: 3 days
|
Revision tags: release/6.3.0_cvs, release/6.3.0 |
|
#
6259969d |
| 26-Nov-2007 |
Konstantin Belousov <kib@FreeBSD.org> |
Implement read_default_ldt in linux_modify_ldt(). It copies out zeroed descriptor, like real Linux does.
Tested by: Yuriy Tsibizov <yuriy.tsibizov at gmail com> Submitted by: rdivacky MFC after: 1 w
Implement read_default_ldt in linux_modify_ldt(). It copies out zeroed descriptor, like real Linux does.
Tested by: Yuriy Tsibizov <yuriy.tsibizov at gmail com> Submitted by: rdivacky MFC after: 1 week
show more ...
|
#
52739c2d |
| 20-Jul-2007 |
Attilio Rao <attilio@FreeBSD.org> |
i386_set_ioperm, i386_get_ldt and i386_set_ldt are now MPSAFE (Giant/sched_lock free) so remove unuseful Giant cruft.
Approved by: jeff Approved by: re Sponsorized by: NGX Italy (http://www.ngx.it)
|
#
79d5bdcc |
| 05-Jul-2007 |
Peter Wemm <peter@FreeBSD.org> |
Don't add the 'pad' argument to the mmap/truncate/etc syscalls.
Submitted by: kensmith Approved by: re (kensmith)
|
#
982d11f8 |
| 05-Jun-2007 |
Jeff Roberson <jeff@FreeBSD.org> |
Commit 14/14 of sched_lock decomposition. - Use thread_lock() rather than sched_lock for per-thread scheduling sychronization. - Use the per-process spinlock rather than the sched_lock for per-p
Commit 14/14 of sched_lock decomposition. - Use thread_lock() rather than sched_lock for per-thread scheduling sychronization. - Use the per-process spinlock rather than the sched_lock for per-process scheduling synchronization.
Tested by: kris, current@ Tested on: i386, amd64, ULE, 4BSD, libthr, libkse, PREEMPTION, etc. Discussed with: kris, attilio, kmacy, jhb, julian, bde (small parts each)
show more ...
|
#
ec69a8a6 |
| 11-May-2007 |
Alexander Kabaev <kan@FreeBSD.org> |
Do not dereference linux_to_bsd_signal[-1] if userland has passed zero as exit signal.
GCC 4.2 changes the kernel data segment layout not to have 0 in that memory location. This code ran by luck bef
Do not dereference linux_to_bsd_signal[-1] if userland has passed zero as exit signal.
GCC 4.2 changes the kernel data segment layout not to have 0 in that memory location. This code ran by luck before and now the luck has run out.
show more ...
|
#
a4e3bad7 |
| 02-Mar-2007 |
Jung-uk Kim <jkim@FreeBSD.org> |
MFP4: 115220, 115222
- Fix style(9) and reduce diff between amd64 and i386. - Prefix Linuxulator macros with LINUX_ to prevent future collision.
|
#
6a5964d3 |
| 27-Feb-2007 |
Jung-uk Kim <jkim@FreeBSD.org> |
MFP4: 115094
Linux does not check file descriptor when MAP_ANONYMOUS is set. This should fix recent LTP test regressions.
Reported by: Scot Hetzel (swhetzel at gmail dot com) netchild
|
#
802e08a3 |
| 24-Feb-2007 |
Alexander Leidinger <netchild@FreeBSD.org> |
Partial MFp4 of 114977: Whitespace commit: Fix grammar, spelling and punctuation.
Submitted by: "Scot Hetzel" <swhetzel@gmail.com>
|
#
1a26db0a |
| 23-Feb-2007 |
Alexander Leidinger <netchild@FreeBSD.org> |
MFp4 (114193 (i386 part), 114194, 114195, 114200): - Dont "return" in linux_clone() after we forked the new process in a case of problems. - Move the copyout of p2->p_pid outside the emul_lock c
MFp4 (114193 (i386 part), 114194, 114195, 114200): - Dont "return" in linux_clone() after we forked the new process in a case of problems. - Move the copyout of p2->p_pid outside the emul_lock coverage in linux_clone(). - Cache the em->pdeath_signal in a local variable and move the copyout out of the emul_lock coverage. - Move the free() out of the emul_shared_lock coverage in a preparation to switch emul_lock to non-sleepable lock (mutex).
Submitted by: rdivacky
show more ...
|
#
10931a46 |
| 15-Feb-2007 |
Jung-uk Kim <jkim@FreeBSD.org> |
MFP4: 113025, 113146, 113177, 113203, 113500, 113546, 113570
- PROT_READ, PROT_WRITE, or PROT_EXEC implies PROT_READ and PROT_EXEC. Linux/ia64's i386 emulation layer does this and it complies with L
MFP4: 113025, 113146, 113177, 113203, 113500, 113546, 113570
- PROT_READ, PROT_WRITE, or PROT_EXEC implies PROT_READ and PROT_EXEC. Linux/ia64's i386 emulation layer does this and it complies with Linux header files. This fixes mmap05 LTP test case on amd64. - Do not adjust stack size when failure has occurred. - Synchronize i386 mmap/mprotect with amd64.
show more ...
|
#
a9ccaccf |
| 01-Feb-2007 |
Konstantin Belousov <kib@FreeBSD.org> |
Fix LOR that occurs because proctree_lock was acquired while holding emuldata lock by moving the code upwards outside the emul_lock coverage.
Submitted by: rdivacky
|