summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | resolve merge conflictssam2005-05-2910-895/+600
| | | | | | | | Reviewed by: bms (earlier version)
* | This commit was generated by cvs2svn to compensate for changes in r146768,sam2005-05-2943-1058/+6642
|\ \ | | | | | | | | | which included commits to RCS files with non-trunk default branches.
| * | Virgin import of libpcap v0.9.1 (alpha 096) from tcpdump.orgsam2005-05-2953-1344/+7271
| | |
* | | Chop a '>' in a feature name (RSVD2>) that snuck in;schweikh2005-05-292-2/+2
| | | | | | | | | | | | | | | | | | | | | this now balances the <> flags displayed at boot, e.g. without this Features2=0x41d<SSE3,RSVD2>,MON,DS_CPL,CNTX-ID> MFC after: 1 week
* | | Due to a last minute change in the #ifdefing in malloc.h before committing,rwatson2005-05-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | a nested include of param.h is required so that MAXCPU is visible to all consumers of sys/malloc.h. In an earlier version of the patch, the malloc_type_internal structure was only conditionally visible. Pointed out by: delphij
* | | Constify savedir pointer, and remove an accompaning strdup() call.delphij2005-05-291-8/+3
| | |
* | | Add /usr/include/bsm to mtree creation set.rwatson2005-05-291-0/+2
| | | | | | | | | | | | | | | Submitted by: wsalamon Obtained from: TrustedBSD Project
* | | Do install BSM include files (such as they are) when installing systemrwatson2005-05-291-1/+1
| | | | | | | | | | | | | | | | | | | | | includes. Submitted by: wsalamon Obtained from: TrustedBSD Project
* | | For consistency with more system include files, add a trailing '_' torwatson2005-05-291-3/+3
| | | | | | | | | | | | the define guards in audit_kevents.h.
* | | Add place-holder audit.h that defines only au_event_t, which is neededrwatson2005-05-291-0/+39
| | | | | | | | | | | | | | | | | | | | | in order to modify the system call table to include event identifiers. The full audit.h will be merged at a later date. Obtained from: TrustedBSD Project
* | | Give variable an initial value. Use errx() instead of fprintf().charnier2005-05-291-4/+4
| | |
* | | Reduce compiler warning: variable might be used uninitialized, by givingcharnier2005-05-291-3/+5
| | | | | | | | | | | | an initial value.
* | | Even if variable is never used uninitialized by the semantic, reduce compilercharnier2005-05-291-0/+2
| | | | | | | | | | | | warning by giving an initial value in all cases.
* | | rscid -> __FBSDID. Mark parameter as __unused when necessary.charnier2005-05-294-9/+13
| | |
* | | Move variable initialization to reduce compiler warning.charnier2005-05-291-2/+2
| | |
* | | Reduce compiler warning: variable might be used uninitialized, by givingcharnier2005-05-292-0/+2
| | | | | | | | | | | | an initial value.
* | | Move FreeBSD Id outside of copyright. Initialize variable.charnier2005-05-291-2/+4
| | |
* | | Typo correction.avatar2005-05-291-1/+1
| | |
* | | Modify vmstat(8)'s domem() routine, which is responsible for extractingrwatson2005-05-291-7/+38
| | | | | | | | | | | | | | | | | | | | | malloc(9) statistics from kernel memory or a kernel coredump, to catch up with recent changes to adopt per-CPU malloc(9) statistics. The new routines walk the per-CPU statistics pools and coalesce them for presentation to the user.
* | | Kernel malloc layers malloc_type allocation over one of two underlyingrwatson2005-05-292-146/+231
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | allocators: a set of power-of-two UMA zones for small allocations, and the VM page allocator for large allocations. In order to maintain unified statistics for specific malloc types, kernel malloc maintains a separate per-type statistics pool, which can be monitored using vmstat -m. Prior to this commit, each pool of per-type statistics was protected using a per-type mutex associated with the malloc type. This change modifies kernel malloc to maintain per-CPU statistics pools for each malloc type, and protects writing those statistics using critical sections. It also moves to unsynchronized reads of per-CPU statistics when generating coalesced statistics. To do this, several changes are implemented: - In the previous world order, the statistics memory was allocated by the owner of the malloc type structure, allocated statically using MALLOC_DEFINE(). This embedded the definition of the malloc_type structure into all kernel modules. Move to a model in which a pointer within struct malloc_type points at a UMA-allocated malloc_type_internal data structure owned and maintained by kern_malloc.c, and not part of the exported ABI/API to the rest of the kernel. For the purposes of easing a possible MFC, re-use an existing pointer in 'struct malloc_type', and maintain the current malloc_type structure size, as well as layout with respect to the fields reused outside of the malloc subsystem (such as ks_shortdesc). There are several unused fields as a result of no longer requiring the mutex in malloc_type. - Struct malloc_type_internal contains an array of malloc_type_stats, of size MAXCPU. The structure defined above avoids hard-coding a kernel compile-time value of MAXCPU into kernel modules that interact with malloc. - When accessing per-cpu statistics for a malloc type, surround read - modify - update requests with critical_enter()/critical_exit() in order to avoid races during write. The per-CPU fields are written only from the CPU that owns them. - Per-CPU stats now maintained "allocated" and "freed" counters for number of allocations/frees and bytes allocated/freed, since there is no longer a coherent global notion of the totals. When coalescing malloc stats, accept a slight race between reading stats across CPUs, and avoid showing the user a negative allocation count for the type in the event of a race. The global high watermark is no longer maintained for a malloc type, as there is no global notion of the number of allocations. - While tearing up the sysctl() path, also switch to using sbufs. The current "export as text" sysctl format is retained with the same syntax. We may want to change this in the future to export more per-CPU information, such as how allocations and frees are balanced across CPUs. This change results in a substantial speedup of kernel malloc and free paths on SMP, as critical sections (where usable) out-perform mutexes due to avoiding atomic/bus-locked operations. There is also a minor improvement on UP due to the slightly lower cost of critical sections there. The cost of the change to this approach is the loss of a continuous notion of total allocations that can be exploited to track per-type high watermarks, as well as increased complexity when monitoring statistics. Due to carefully avoiding changing the ABI, as well as hardening the ABI against future changes, it is not necessary to recompile kernel modules for this change. However, MFC'ing this change to RELENG_5 will require also MFC'ing optimizations for soft critical sections, which may modify exposed kernel ABIs. The internal malloc API is changed, and modifications to vmstat in order to restore "vmstat -m" on core dumps will follow shortly. Several improvements from: bde Statistics approach discussed with: ups Tested by: scottl, others
* | | Add vr_init_t member to sc_rndr_sw_t instances in order to unbreakmarius2005-05-291-0/+3
| | | | | | | | | | | | compilation after sys/dev/syscons/syscons.h rev. 1.83.
* | | Fix check for leading zero, so that it does not block two zeroesglebius2005-05-291-1/+5
| | | | | | | | | | | | in hook name.
* | | Sync with syscons update (Add new member to struct sc_rndr_sw).nyan2005-05-291-0/+2
| | |
* | | The end values passed to rman_manage_region() for PCI i/o and memgrehan2005-05-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | spaces were 1 too large. This resulted in the rman list not being sorted correctly, and USB ports not being discovered on older TiBooks. Detective work by: Andreas Tobler <toa at pop dot agri dot ch>
* | | Add VESA mode support for syscons, which enables the support of 15, 16,delphij2005-05-298-238/+1051
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 24, and 32 bit modes. To use that, syscons(4) must be built with the compile time option 'options SC_PIXEL_MODE', and VESA support (a.k.a. vesa.ko) must be either loaded, or be compiled into the kernel. Do not return EINVAL when the mouse state is changed to what it already is, which seems to cause problems when you have two mice attached, and applications are not likely obtain useful information through the EINVAL caused by showing the mouse pointer twice. Teach vidcontrol(8) about mode names like MODE_<NUMBER>, where <NUMBER> is the video mode number from the vidcontrol -i mode output. Also, revert the video mode if something fails. Obtained from: DragonFlyBSD Discussed at: current@ with patch attached [1] PR: kern/71142 [2] Submitted by: Xuefeng DENG <dsnofe at msn com> [1], Cyrille Lefevre <cyrille dot lefevre at laposte dot net> [2]
* | | Move information about exit status into a DIAGNOSTICS section.tjr2005-05-291-1/+1
| | |
* | | Remove bus_{mem,p}io.h and related code for a micro-optimization on i386nyan2005-05-29173-1269/+84
| | | | | | | | | | | | | | | | | | and amd64. The optimization is a trivial on recent machines. Reviewed by: -arch (imp, marcel, dfr)
* | | Fix panic when module is compiled in and it is loaded from loader.conf.pjd2005-05-281-3/+5
| | | | | | | | | | | | | | | | | | Only panic is fixed, module will be still listed in kldstat(8) output. Not sure what is correct fix, because adding unloading code in case of failure to linker_init_kernel_modules() doesn't work.
* | | Provide info on the incompatible change in v1.33 of sys/kern/imgact_shell.cgad2005-05-281-0/+6
| | | | | | | | | | | | Discussed with: imp
* | | Change the way options are parsed on the `#!'-line of a shell-script. Insteadgad2005-05-281-7/+174
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of having the kernel parse that line and add an entry to the argument list for each 'separate word' it finds, have it add only one entry which holds all the words found on that line. The old behavior is useful in some situations, but it does not match the way any other operating system will parse that line. This has been discussed in the thread "Bug in #! processing - One More Time" on the freebsd-arch mailing list (starting back on Feb 24, 2005). The first few messages in that thread provide the background in much detail. PR: 16393 Reviewed by: freebsd-arch
* | | Prevent loading modules with are compiled into the kernel.pjd2005-05-281-2/+8
| | | | | | | | | | | | | | | | | | | | | PR: kern/48759 Submitted by: Pawe³ Ma³achowski <pawmal@unia.3lo.lublin.pl> Patch from: demon MFC after: 2 weeks
* | | integrate changes from libpcap-0.9.1-096sam2005-05-281-5/+137
| | | | | | | | | | | | Reviewed by: bms
* | | Update some comments to reflect the change from spl-based to lock-basedalc2005-05-281-4/+3
| | | | | | | | | | | | synchronization.
* | | pmap_enter() no longer requires Giant. Therefore, stop acquiring andalc2005-05-281-2/+0
| | | | | | | | | | | | | | | | | | releasing it in pmap_enter_quick(). MFC after: 3 weeks
* | | Document 'jid' keyword for ps(1) and '-j' option for pgrep(1)/pkill(1).pjd2005-05-281-5/+20
| | |
* | | Regenerate from syscalls.master.rwatson2005-05-285-6/+6
| | |
* | | Mark ntp_gettime() as MSTD, since its system call path will acquirerwatson2005-05-281-1/+1
| | | | | | | | | | | | Giant if required.
* | | Explicitly acquire Giant around the ntp_gettime() and assert it in therwatson2005-05-281-0/+4
| | | | | | | | | | | | | | | | | | | | | sysctl path. While this code is close to MPSAFE, it may require some additional locking. Mark ntp_gettime1() as GIANT_REQUIRED for now. Suggested by: phk
* | | Change the spkr_set_pitch() function to a macro to fix low level profiling.nyan2005-05-284-28/+20
| | |
* | | Regenerate for updated syscalls.master.rwatson2005-05-285-13/+13
| | |
* | | Mark the following compatability system calls as MCOMPAT or MCOMPAT4 basedrwatson2005-05-281-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | on the their simply wrapping MPSAFE implementations of existing MPSAFE system calls: getfsstat() lseek() stat() lstat() truncate() ftruncate() statfs() fstatfs() Note that ogetdirentries() is not marked MPSAFE because it does not share the MPSAFE implementation used for getdirentries(), and requires separate locking to be implemented.
* | | Fix use of uninitialized variable len in ngd_send.bz2005-05-281-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Note: len gets intialized to 0 for sap == NULL case only to make compiler on amd64 happy. This has nothing todo with the former uninitialized use of len in sap != NULL case. Reviewed by: glebius Approved by: pjd (mentor)
* | | Regenerate from syscalls.master.rwatson2005-05-285-6/+6
| | |
* | | Mark quotactl() as MSTD.rwatson2005-05-281-1/+1
| | |
* | | Acquire Giant explicitly in quotactl() so that the syscalls.masterrwatson2005-05-282-4/+20
| | | | | | | | | | | | entry can become MSTD.
* | | Regenerate from updated syscalls.master.rwatson2005-05-285-6/+6
| | |
* | | Mark kenv(2) as MPSAFE, since it appears to be properly locked down.rwatson2005-05-281-1/+1
| | |
* | | Regenerate system call tables from syscalls.master.rwatson2005-05-285-9/+9
| | |
* | | Also mark the COMPAT4 version of fhstatfs() as MPSAFE.rwatson2005-05-281-1/+1
| | |
* | | Mark fhopen(), fhstat(), and fhstatfs() as MSTD, since they nowrwatson2005-05-281-3/+3
| | | | | | | | | | | | acquire Giant themselves.
OpenPOWER on IntegriCloud