#
259065 |
|
07-Dec-2013 |
gjb |
- Copy stable/10 (r259064) to releng/10.0 as part of the 10.0-RELEASE cycle. - Update __FreeBSD_version [1] - Set branch name to -RC1
[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so start releng/10.0 at '100' so the branch is started with a value ending in zero.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
256281 |
|
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
#
157268 |
|
29-Mar-2006 |
jhb |
Move the PC_TO_I() and KCOUNT() macros so they aren't GUPROF specific since they operate on fields of struct gmonparam which is not GUPROF specific.
Approved by: bde Reported by: alc
|
#
130484 |
|
14-Jun-2004 |
bms |
Add prototypes for the userland gmon support functions, which normally live in src/lib/libc/gmon/gmon.c. glibc puts these prototypes in the same header, so put them here for the sake of consistency.
PR: bin/4459 Reviewed by: bde
|
#
129444 |
|
19-May-2004 |
bde |
Moved most of the "MI" definitions and declarations from <machine/profile.h> to <sys/gmon.h>. Cleaned them up a little by not attempting to ifdef for incomplete and out of date support for GUPROF in userland, as in the sparc64 version.
|
#
127976 |
|
07-Apr-2004 |
imp |
Remove advertising clause from University of California Regent's license, per letter dated July 22, 1999.
Approved by: core
|
#
91009 |
|
21-Feb-2002 |
bde |
Reserved one of the spare fields in struct gmon to record the history counter type, as threatened in rev.1.8 (the density doesn't need to be recorded since it can be derived from other fields). This doesn't affect binary compatibility, but new utilities won't be able to depend on the contents of this field because libc/gmon/gmon.c was broken -- it wrote garbage to the spare fields.
Added a history counter type field to struct gmonparam. This breaks binary compatibility a little, since kgmon wanted to read the whole struct. Fixed kgmon to only depend on reading the critical earlier parts of the struct. This should also fix 6+ year old breakage of binary compatibility when the profrate field was added.
Only initialize the new field in struct gmon for now, so that the compatibility code for this (in kgmon) gets tested. The compatibility code has to guesstimate the value. The new field in struct gmonparam is for the kernel to initialize so that kgmon doesn't have to guess.
|
#
50477 |
|
27-Aug-1999 |
peter |
$Id$ -> $FreeBSD$
|
#
37629 |
|
14-Jul-1998 |
bde |
Changed to the C9x draft spelling of the (unsigned) integral type suitable for holding object pointers (ptrint_t -> uintptr_t). Added corresponding signed type (intptr_t). Changed/added corresponding non-C9x types for function pointers to match. Don't use nonstandard types to implement these types, and don't comment on them in <machine/types.h>.
|
#
27379 |
|
13-Jul-1997 |
bde |
32-bit counters aren't large enough for 100+MHz clocks. Use 64-bit counters. `4' in GPROF4 and gprof4 now means 8. gprof4 needs to be recompiled to match the kernel.
|
#
22975 |
|
22-Feb-1997 |
peter |
Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not ready for it yet.
|
#
22639 |
|
13-Feb-1997 |
bde |
Moved definition of FUNCTION_ALIGNMENT to a machine-dependent place. Changed it from 4 to 16 for i386's. It can be anything for i386's, but compiler options limit it to a power of 2, and assembler and linker deficiencies limit it to a small power of 2 (<= 16). We use 16 in the kernel to get smaller tables (see Makefile.i386 and <machine/asmacros.h>). We still use the default of 4 in user mode.
Use HISTCOUNTER instead of (*kcount) in the definition of KCOUNT() for consistency with other macros.
|
#
21673 |
|
14-Jan-1997 |
jkh |
Make the long-awaited change from $Id$ to $FreeBSD$
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.
|
#
19000 |
|
17-Oct-1996 |
bde |
Improved non-statistical (GUPROF) profiling: - use a more accurate and more efficient method of compensating for overheads. The old method counted too much time against leaf functions. - normally use the Pentium timestamp counter if available. On Pentiums, the times are now accurate to within a couple of cpu clock cycles per function call in the (unlikely) event that there are no cache misses in or caused by the profiling code. - optionally use an arbitrary Pentium event counter if available. - optionally regress to using the i8254 counter. - scaled the i8254 counter by a factor of 128. Now the i8254 counters overflow slightly faster than the TSC counters for a 150MHz Pentium :-) (after about 16 seconds). This is to avoid fractional overheads.
files.i386: permon.c temporarily has to be classified as a profiling-routine because a couple of functions in it may be called from profiling code.
options.i386: - I586_CTR_GUPROF is currently unused (oops). - I586_PMC_GUPROF should be something like 0x70000 to enable (but not use unless prof_machdep.c is changed) support for Pentium event counters. 7 is a control mode and the counter number 0 is somewhere in the 0000 bits (see perfmon.h for the encoding).
profile.h: - added declarations. - cleaned up separation of user mode declarations.
prof_machdep.c: Mostly clock-select changes. The default clock can be changed by editing kmem. There should be a sysctl for this.
subr_prof.c: - added copyright. - calibrate overheads for the new method. - documented new method. - fixed races and and machine dependencies in start/stop code.
mcount.c: Use the new overhead compensation method.
gmon.h: - changed GPROF4 counter type from unsigned to int. Oops, this should be machine-dependent and/or int32_t. - reorganized overhead counters.
Submitted by: Pentium event counter changes mostly by wollman
|
#
13107 |
|
29-Dec-1995 |
bde |
Implemented non-statistical kernel profiling. This is based on looking at a high resolution clock for each of the following events: function call, function return, interrupt entry, interrupt exit, and interesting branches. The differences between the times of these events are added at appropriate places in a ordinary histogram (as if very fast statistical profiling sampled the pc at those places) so that ordinary gprof can be used to analyze the times.
gmon.h: Histogram counters need to be 4 bytes for microsecond resolutions. They will need to be larger for the 586 clock. The comments were vax-centric and wrong even on vaxes. Does anyone disagree?
gprof4.c: The standard gprof should support counters of all integral sizes and the size of the counter should be in the gmon header. This hack will do until then. (Use gprof4 -u to examine the results of non-statistical profiling.)
config/*: Non-statistical profiling is configured with `config -pp'. `config -p' still gives ordinary profiling.
kgmon/*: Non-statistical profiling is enabled with `kgmon -B'. `kgmon -b' still enables ordinary profiling (and distables non-statistical profiling) if non-statistical profiling is configured.
|
#
10407 |
|
29-Aug-1995 |
bde |
kmstartup had the wrong type and unnecessarily external linkage for a sysinit function.
subr_prof.c: Remove useless comment.
|
#
8876 |
|
30-May-1995 |
rgrimes |
Remove trailing whitespace.
|
#
8504 |
|
14-May-1995 |
dg |
Changed swap partition handling/allocation so that it doesn't require specific partitions be mentioned in the kernel config file ("swap on foo" is now obsolete).
From Poul-Henning:
The visible effect is this:
As default, unless options "NSWAPDEV=23" is in your config, you will have four swap-devices. You can swapon(2) any block device you feel like, it doesn't have to be in the kernel config.
There is a performance/resource win available by getting the NSWAPDEV right (but only if you have just one swap-device ??), but using that as default would be too restrictive.
The invisible effect is that:
Swap-handling disappears from the $arch part of the kernel. It gets a lot simpler (-145 lines) and cleaner.
Reviewed by: John Dyson, David Greenman Submitted by: Poul-Henning Kamp, with minor changes by me.
|
#
7090 |
|
16-Mar-1995 |
bde |
Add and move declarations to fix all of the warnings from `gcc -Wimplicit' (except in netccitt, netiso and netns) and most of the warnings from `gcc -Wnested-externs'. Fix all the bugs found. There were no serious ones.
|
#
6010 |
|
29-Jan-1995 |
bde |
Define MAXARCS correctly. It has nothing to do with HISTCOUNTER, and overflowed when I enlarged HISTCOUNTER to u_int.
|
#
1817 |
|
02-Aug-1994 |
dg |
Added $Id$
|
#
1542 |
|
24-May-1994 |
rgrimes |
This commit was generated by cvs2svn to compensate for changes in r1541, which included commits to RCS files with non-trunk default branches.
|
#
1541 |
|
24-May-1994 |
rgrimes |
BSD 4.4 Lite Kernel Sources
|