#
05e634ef |
| 03-Dec-1993 |
Andrew Moore <alm@FreeBSD.org> |
From: Jeffrey Hsu <hsu@soda.berkeley.edu>
The following patch adds the addr argument to signal handlers.
The kernel with the patch is no more and no less in compliance or in violation of POSIX and
From: Jeffrey Hsu <hsu@soda.berkeley.edu>
The following patch adds the addr argument to signal handlers.
The kernel with the patch is no more and no less in compliance or in violation of POSIX and ANSI C than the kernel before the patch.
The added functionality this addr argument provides is quite useful. It enables an entire class of algorithms which use mprotect to trace memory references. Beside garbage collectors, I have heard of this technique being applied to debuggers and profilers. The only benchmarking I've performed is using akcl to compile maxima: without the kernel patch, it takes 7 hours to compile maxima, while with stratified garbage collection, it only takes 50 minutes.
Basically, I can't think of a reason not to add the addr argument and there is a compelling need for it.
If you find the patch acceptable, please let me know so I can send my FreeBSD akcl config files to wfs for inclusion in the core akcl release. The old 386BSD config files there won't work on either NetBSD or FreeBSD.
show more ...
|
#
eee5a634 |
| 16-Nov-1993 |
David Greenman <dg@FreeBSD.org> |
new process tracing code from Sean Eric Fagen (sef@kithrup.com). ...also, fixed up the syscall args to make GCC happy.
|
#
6e393973 |
| 07-Nov-1993 |
Garrett Wollman <wollman@FreeBSD.org> |
Made all header files idempotent and moved incorrect common data from headers into a related source file. Added cons.h as first step towards moving i386/i386/cons.h to machine/cons.h where it belong
Made all header files idempotent and moved incorrect common data from headers into a related source file. Added cons.h as first step towards moving i386/i386/cons.h to machine/cons.h where it belongs.
show more ...
|
Revision tags: release/1.0.0_cvs |
|
#
34a8ed1b |
| 16-Oct-1993 |
Rodney W. Grimes <rgrimes@FreeBSD.org> |
Removed all patch kit headers, sccsid and rcsid strings, put $Id$ in, some minor cleanup. Added $Id$ to files that did not have any version info, etc
|
#
5b81b6b3 |
| 12-Jun-1993 |
Rodney W. Grimes <rgrimes@FreeBSD.org> |
Initial import, 0.1 + pk 0.2.4-B1
|
#
6fb5da50 |
| 29-Mar-2010 |
John Baldwin <jhb@FreeBSD.org> |
Cosmetic tweak to use a type suffix instead of a cast to force a constant to be a long.
|
#
841c0c7e |
| 11-Mar-2010 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Provide groundwork for 32-bit binary compatibility on non-x86 platforms, for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32 option to COMPAT_FREEBSD32, removes some IA32-speci
Provide groundwork for 32-bit binary compatibility on non-x86 platforms, for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32 option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts of the kernel and enhances the freebsd32 compatibility code to support big-endian platforms.
Reviewed by: kib, jhb
show more ...
|
Revision tags: release/7.2.0_cvs, release/7.2.0 |
|
#
9c797940 |
| 13-Apr-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- Merge from HEAD
|
#
0cdf4ffa |
| 01-Apr-2009 |
Konstantin Belousov <kib@FreeBSD.org> |
Add all segment registers for the amd64 CPU to struct reg and mcontext. To keep these structures ABI-compatible, half the size of r_trapno, r_err, mc_trapno, mc_flags.
Add fsbase and gsbase to mcont
Add all segment registers for the amd64 CPU to struct reg and mcontext. To keep these structures ABI-compatible, half the size of r_trapno, r_err, mc_trapno, mc_flags.
Add fsbase and gsbase to mcontext on both amd64 and i386. Add flags to amd64 mcontext to indicate that it contains valid segments or bases.
In collaboration with: pho Discussed with: peter Reviewed by: jhb
show more ...
|
Revision tags: release/7.1.0_cvs, release/7.1.0, release/6.4.0_cvs, release/6.4.0, release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0, release/6.2.0_cvs, release/6.2.0 |
|
#
81efc3d9 |
| 17-Nov-2006 |
John Baldwin <jhb@FreeBSD.org> |
Add support for 8 byte hardware watches in long mode. Kernel hardware watches support 8 byte watches. For userland, we disallow 8 byte watches for 32-bit tasks.
|
#
7693afca |
| 17-Nov-2006 |
John Baldwin <jhb@FreeBSD.org> |
- Add macro constants for the various fields in %dr7 and use them in place of various scattered magic values. - Pretty print the address of hardware watchpoints in 'show watch' rather than just d
- Add macro constants for the various fields in %dr7 and use them in place of various scattered magic values. - Pretty print the address of hardware watchpoints in 'show watch' rather than just displaying hex. - Expand address field width on amd64 for 64-bit pointers.
show more ...
|
#
71f40077 |
| 15-Nov-2006 |
John Baldwin <jhb@FreeBSD.org> |
Various whitespace and style fixes.
|
Revision tags: release/5.5.0_cvs, release/5.5.0, release/6.1.0_cvs, release/6.1.0, release/6.0.0_cvs, release/6.0.0, release/5.4.0_cvs, release/5.4.0, release/4.11.0_cvs, release/4.11.0, release/5.3.0_cvs, release/5.3.0, release/4.10.0_cvs, release/4.10.0 |
|
#
9a80fddc |
| 06-Apr-2004 |
Warner Losh <imp@FreeBSD.org> |
Remove advertising clause from University of California Regent's license, per letter dated July 22, 1999 and email from Peter Wemm.
Approved by: core, peter
|
Revision tags: release/5.2.1_cvs, release/5.2.1 |
|
#
d957532a |
| 29-Jan-2004 |
Peter Wemm <peter@FreeBSD.org> |
Add dbreg struct definitions for /proc/*/dbregs and a place to store the registers in the pcb
|
Revision tags: release/5.2.0_cvs, release/5.2.0 |
|
#
fcfe57d6 |
| 08-Nov-2003 |
Peter Wemm <peter@FreeBSD.org> |
Update the graffiti.
|
#
8b2454d8 |
| 08-Nov-2003 |
Peter Wemm <peter@FreeBSD.org> |
Rename npx* to fpu*. I haven't done the flags/function names yet.
|
Revision tags: release/4.9.0_cvs, release/4.9.0, release/5.1.0_cvs, release/5.1.0 |
|
#
f229f5cf |
| 23-May-2003 |
Peter Wemm <peter@FreeBSD.org> |
As suggested by the gdb folks, pad the 'struct fpreg' to a full 512 bytes to match the native fxsave/fxrstor object size since thats apparently what the Linux/NetBSD folks do.
|
#
afa88623 |
| 01-May-2003 |
Peter Wemm <peter@FreeBSD.org> |
Commit MD parts of a loosely functional AMD64 port. This is based on a heavily stripped down FreeBSD/i386 (brutally stripped down actually) to attempt to get a stable base to start from. There is a
Commit MD parts of a loosely functional AMD64 port. This is based on a heavily stripped down FreeBSD/i386 (brutally stripped down actually) to attempt to get a stable base to start from. There is a lot missing still. Worth noting: - The kernel runs at 1GB in order to cheat with the pmap code. pmap uses a variation of the PAE code in order to avoid having to worry about 4 levels of page tables yet. - It boots in 64 bit "long mode" with a tiny trampoline embedded in the i386 loader. This simplifies locore.s greatly. - There are still quite a few fragments of i386-specific code that have not been translated yet, and some that I cheated and wrote dumb C versions of (bcopy etc). - It has both int 0x80 for syscalls (but using registers for argument passing, as is native on the amd64 ABI), and the 'syscall' instruction for syscalls. int 0x80 preserves all registers, 'syscall' does not. - I have tried to minimize looking at the NetBSD code, except in a couple of places (eg: to find which register they use to replace the trashed %rcx register in the syscall instruction). As a result, there is not a lot of similarity. I did look at NetBSD a few times while debugging to get some ideas about what I might have done wrong in my first attempt.
show more ...
|
Revision tags: release/4.8.0_cvs, release/4.8.0, release/5.0.0_cvs, release/5.0.0 |
|
#
4ef42f2b |
| 07-Nov-2002 |
Alfred Perlstein <alfred@FreeBSD.org> |
Properly parenthesize the DBREG_DRX macro's variables to allow for DBREG_DRX(&dbregs, n) usage.
|
#
50c026e5 |
| 20-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Change the definition of the debugging registers to be an array, so that we can index into it, rather than do pointer gymnastics on a structure containing 8 elements.
Verified by: MD5 hash on the pr
Change the definition of the debugging registers to be an array, so that we can index into it, rather than do pointer gymnastics on a structure containing 8 elements.
Verified by: MD5 hash on the produced .o files.
show more ...
|
Revision tags: release/4.7.0_cvs |
|
#
bafbd492 |
| 29-Aug-2002 |
Jake Burkholder <jake@FreeBSD.org> |
Renamed poorly named setregs to exec_setregs. Moved its prototype to imgact.h with the other exec support functions.
|
Revision tags: release/4.6.2_cvs, release/4.6.2, release/4.6.1, release/4.6.0_cvs |
|
#
b63dc6ad |
| 20-Mar-2002 |
Alfred Perlstein <alfred@FreeBSD.org> |
Remove __P.
|
Revision tags: release/4.5.0_cvs, release/4.4.0_cvs |
|
#
1f042619 |
| 22-Oct-2001 |
Dag-Erling Smørgrav <des@FreeBSD.org> |
[partially forced commit due to pilot error in earlier commit attempt]
{set,fill}_{,fp,db}regs() fixup:
- Add dummy {set,fill}_dbregs() on architectures that don't have them.
- KSEfy the powerpc
[partially forced commit due to pilot error in earlier commit attempt]
{set,fill}_{,fp,db}regs() fixup:
- Add dummy {set,fill}_dbregs() on architectures that don't have them.
- KSEfy the powerpc versions (struct proc -> struct thread).
- Some architectures had the prototypes in md_var.h, some in reg.h, and some in both; for consistency, move them to reg.h on all platforms.
These functions aren't really MD (the implementation is MD, but the interface is MI), so they should move to an MI header, but I haven't figured out which one yet.
Run-tested on i386, build-tested on Alpha, untested on other platforms.
show more ...
|
#
b40ce416 |
| 12-Sep-2001 |
Julian Elischer <julian@FreeBSD.org> |
KSE Milestone 2 Note ALL MODULES MUST BE RECOMPILED make the kernel aware that there are smaller units of scheduling than the process. (but only allow one thread per process at this time). This is fu
KSE Milestone 2 Note ALL MODULES MUST BE RECOMPILED make the kernel aware that there are smaller units of scheduling than the process. (but only allow one thread per process at this time). This is functionally equivalent to teh previousl -current except that there is a thread associated with each process.
Sorry john! (your next MFC will be a doosie!)
Reviewed by: peter@freebsd.org, dillon@freebsd.org
X-MFC after: ha ha ha ha
show more ...
|
Revision tags: release/4.3.0_cvs, release/4.3.0, release/4.2.0, release/4.1.1_cvs |
|
#
9d90941a |
| 21-Sep-2000 |
Brian S. Dean <bsd@FreeBSD.org> |
Add a couple of debug register helper functions to assist in setting and clearing watchpoints.
Reviewed by: jwd@FreeBSD.org, -hackers@
|