summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* o Add vm_map_unwire() for unwiring contiguous regions of either kernelalc2002-06-072-1/+167
| | | | | | | | | | | | | | | or user vm_maps. In accordance with the standards for munlock(2), and in contrast to vm_map_user_pageable(), this implementation does not allow holes in the specified region. This implementation uses the "in transition" flag described below. o Introduce a new flag, "in transition," to the vm_map_entry. Eventually, vm_map_delete() and vm_map_simplify_entry() will respect this flag by deallocating in-transition vm_map_entrys, allowing the vm_map lock to be safely released in vm_map_unwire() and (the forthcoming) vm_map_wire(). o Modify vm_map_simplify_entry() to respect the in-transition flag. In collaboration with: tegge
* Return HOSTNAME_INVALIDADDR when reverse lookup is fail.ume2002-06-071-1/+1
| | | | Submitted by: Sergey Zorin <sergey@cc.tpu.edu.ru>
* Comment out options SMP for now until I figure out what's going on.jake2002-06-071-1/+1
|
* Fix a bug where request_part_size() was hard-coded to check the rootSizejhb2002-06-072-2/+2
| | | | | | variable rather than the one passed in as the first argument. Sponsored by: The Weather Channel
* 0 is not an invalid interrupt in the PCI world (just in the ia32imp2002-06-071-2/+4
| | | | | | world), do not treat it as such. This fixes the alpha boot problem. Reviewed by: drew, des
* Renamed the idempotency identifier to match the file name.bde2002-06-071-3/+3
|
* According to Bruce, this file shouldn't have comments to describe whatjhb2002-06-071-1/+1
| | | | | | | | options do. Comments should be in NOTES and having the comments in two places usually means that one place will just bitrot. Thus, remove the comment for KTRACE_REQUEST_POOL from the previous revision. Requested by: bde
* Uncomment some bits that we now need.benno2002-06-072-12/+12
|
* Fix up the DMA buffer allocation call.benno2002-06-071-1/+2
|
* style(9): don't initialise variables in their declaration, remove spacetjr2002-06-071-12/+11
| | | | | after function name, use __unused on unused parameters instead of initialising them to bogus values.
* Commit changes that happened in IPFilter versions 3.4.27 - 3.4.28darrenr2002-06-072-7/+18
|
* This commit was generated by cvs2svn to compensate for changes in r98008,darrenr2002-06-079-0/+81
|\ | | | | | | which included commits to RCS files with non-trunk default branches.
| * Import IPFilter 3.4.28darrenr2002-06-079-0/+81
| |
* | This commit was generated by cvs2svn to compensate for changes in r98005,darrenr2002-06-0715-45/+137
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Import IPFilter 3.4.28darrenr2002-06-0729-90/+236
| |
* | Commit changes that happened in IPFilter versions 3.4.27 - 3.4.28darrenr2002-06-0710-24/+67
| |
* | Contrary to what the comments said, rs -H did not recycle storage, it justtjr2002-06-071-1/+3
| | | | | | | | | | kept writing past the end of the buffer. Correct the code so that it actually does recycle storage.
* | Disabling automatic --same-owner option when running as uid 0 along withsobomax2002-06-071-1/+1
| | | | | | | | | | | | | | the --same-permissions was an overkill, so put it back. This is consistent with what our old tar did. Suggested by: dillon
* | - Fixup / remove obsolete comments.jhb2002-06-077-195/+139
| | | | | | | | | | | | | | | | | | | | | | - ktrace no longer requires Giant so do ktrace syscall events before and after acquiring and releasing Giant, respectively. - For i386, ia32 syscalls on ia64, powerpc, and sparc64, get rid of the goto bad hack and instead use the model on ia64 and alpha were we skip the actual syscall invocation if error != 0. This fixes a bug where if we the copyin() of the arguments failed for a syscall that was not marked MP safe, we would try to release Giant when we had not acquired it.
* | We no longer need to acqure Giant in ast() for ktrpsig() in postsig() nowjhb2002-06-071-2/+0
| | | | | | | | that ktrace no longer needs Giant.
* | - trapsignal() no longer needs to acquire Giant for ktrpsig().jhb2002-06-071-7/+5
| | | | | | | | - Catch up to new ktrace API.
* | - Proper locking for p_tracep and p_traceflag.jhb2002-06-071-7/+7
| | | | | | | | - Catch up to new ktrace API.
* | Properly lock accesses to p_tracep and p_traceflag. Also make a fewjhb2002-06-073-3/+27
| | | | | | | | ktrace-only things #ifdef KTRACE that were not before.
* | Describe ia64_unaligned and geom directories. I hope I got these right.jmallett2002-06-071-0/+2
| |
* | - Catch up to new ktrace API.jhb2002-06-072-28/+23
| | | | | | | | - ktrace trace points in msleep() and cv_wait() no longer need Giant.
* | Catch up to changes in ktrace API.jhb2002-06-074-22/+23
| |
* | Overhaul the ktrace subsystem a bit. For the most part, the actual vnodejhb2002-06-074-239/+472
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | operations to dump a ktrace event out to an output file are now handled asychronously by a ktrace worker thread. This enables most ktrace events to not need Giant once p_tracep and p_traceflag are suitably protected by the new ktrace_lock. There is a single todo list of pending ktrace requests. The various ktrace tracepoints allocate a ktrace request object and tack it onto the end of the queue. The ktrace kernel thread grabs requests off the head of the queue and processes them using the trace vnode and credentials of the thread triggering the event. Since we cannot assume that the user memory referenced when doing a ktrgenio() will be valid and since we can't access it from the ktrace worker thread without a bit of hassle anyways, ktrgenio() requests are still handled synchronously. However, in order to ensure that the requests from a given thread still maintain relative order to one another, when a synchronous ktrace event (such as a genio event) is triggered, we still put the request object on the todo list to synchronize with the worker thread. The original thread blocks atomically with putting the item on the queue. When the worker thread comes across an asynchronous request, it wakes up the original thread and then blocks to ensure it doesn't manage to write a later event before the original thread has a chance to write out the synchronous event. When the original thread wakes up, it writes out the synchronous using its own context and then finally wakes the worker thread back up. Yuck. The sychronous events aren't pretty but they do work. Since ktrace events can be triggered in fairly low-level areas (msleep() and cv_wait() for example) the ktrace code is designed to use very few locks when posting an event (currently just the ktrace_mtx lock and the vnode interlock to bump the refcoun on the trace vnode). This also means that we can't allocate a ktrace request object when an event is triggered. Instead, ktrace request objects are allocated from a pre-allocated pool and returned to the pool after a request is serviced. The size of this pool defaults to 100 objects, which is about 13k on an i386 kernel. The size of the pool can be adjusted at compile time via the KTRACE_REQUEST_POOL kernel option, at boot time via the kern.ktrace_request_pool loader tunable, or at runtime via the kern.ktrace_request_pool sysctl. If the pool of request objects is exhausted, then a warning message is printed to the console. The message is rate-limited in that it is only printed once until the size of the pool is adjusted via the sysctl. I have tested all kernel traces but have not tested user traces submitted by utrace(2), though they should work fine in theory. Since a ktrace request has several properties (content of event, trace vnode, details of originating process, credentials for I/O, etc.), I chose to drop the first argument to the various ktrfoo() functions. Currently the functions just assume the event is posted from curthread. If there is a great desire to do so, I suppose I could instead put back the first argument but this time make it a thread pointer instead of a vnode pointer. Also, KTRPOINT() now takes a thread as its first argument instead of a process. This is because the check for a recursive ktrace event is now per-thread instead of process-wide. Tested on: i386 Compiles on: sparc64, alpha
* | Add the m4(1) regression test.jmallett2002-06-071-1/+1
| |
* | Add a regression test for m4(1).jmallett2002-06-075-0/+50
| | | | | | | | This checks the behaviour of changecom() in both GNU and BSD modes of our m4.
* | Use a larger data type to prevent counters wrapping so quickly.mdodd2002-06-073-16/+16
| | | | | | | | Silence a warning.
* | Sync this up with changes made in v1.8 of sys/netatm/atm_if.hmdodd2002-06-071-0/+4
| |
* | Recognize Adaptec ANA-5910/30/40[A] boards.mdodd2002-06-073-19/+65
| | | | | | | | | | | | Read the MAC address from Adaptec boards correctly. Bits borrowed from sys/pci/if_en_pci.c.
* | Add a new SYSINIT subsystem for KTRACE.jhb2002-06-071-0/+1
| |
* | - Add a per-thread member 'td_inktrace' to be used by ktrace to detectjhb2002-06-071-2/+4
| | | | | | | | | | | | | | when a thread is in the ktrace subsystem to avoid ktrace'ing internal ktrace events. - Update the locking notes for p_traceflag and p_tracep taking into account the new ktrace_lock mutex.
* | No need to check for "-" explicitly in getopt() loop.tjr2002-06-071-5/+1
| |
* | Exit >1 when an error occurs, regardless of whether -s is specified (SUSv3)tjr2002-06-071-4/+4
| |
* | 'device hea' is no longer broken.mdodd2002-06-072-4/+4
| | | | | | | | Add 'nowerror' to a few 'hea' files to ignore warnings on volatiles.
* | Move some code around.mdodd2002-06-074-16/+18
| | | | | | | | Minor whitespace changes.
* | ANSI style function declarations.jmallett2002-06-073-19/+8
| |
* | Expand description of environment variables, refer to environ(7) wheretjr2002-06-071-8/+18
| | | | | | | | appropriate.
* | Style nit: group together optional flags under the one Fl macro.tjr2002-06-071-3/+1
| |
* | Back out previous back out of previously correct code.jmallett2002-06-071-2/+1
| | | | | | | | | | Double-plus-pointy-hat to: jmallett Submitted by: bde
* | Respect LC_CTYPE and LC_COLLATE environment variables, mainly for theirtjr2002-06-072-0/+14
| | | | | | | | | | effects on regular expressions. The libc regex code does not handle equivalence classes well (for example), but we do our best.
* | Use size_t or ino_t instead of int, and remove a few warnings.keramida2002-06-071-4/+4
| | | | | | | | | | | | The makewhatis utility is now ok with WARNS=3. Reviewed by: bde
* | Refer to environ(7) for description of COLUMNS. Note the effects of LANG,tjr2002-06-071-11/+9
| | | | | | | | LC_ALL and LC_TIME upon the utility.
* | Document the standard COLUMNS environment variable here to avoid redundanttjr2002-06-071-0/+10
| | | | | | | | descriptions of its effects in utilities' manual pages.
* | IMO it was a quite ugly idea that if we are running as uid 0 then we cansobomax2002-06-071-0/+4
| | | | | | | | | | | | | | safely ignore current umask(2) and assume that permissions should be set right like in the archive. Not only it violates POLA, but introduces huge potential security vulnerability, particularly for ports, where many popular archives come with 777 files and dirs.
* | Remove tunables to hide warnings that no longer exist.jmallett2002-06-071-2/+0
| |
* | Cast to long to match format. Hidden by revision 1.18 of Makefile.jmallett2002-06-071-1/+2
| |
* | debug.{numvnodes,freevnodes} moved to vfs.des2002-06-061-2/+2
| |
OpenPOWER on IntegriCloud