summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Rename bpfilter to bpf.des1999-07-0690-568/+568
|
* Implement SA_SIGINFO support for the Alpha. This is obviously a littlepeter1999-07-062-56/+43
| | | | | | | | bit preliminary. It still returns an old-style code arg if SA_SIGINFO is not set, but I'm not sure of the value of this since the traditional bsd-style fourth argument (address) is missing. Also, tidy up a bit of lint.
* Backout the previous change. Claimed to break compatibility withn_hibma1999-07-061-1/+1
| | | | | | NetBSD. Requested-By: John Polstra
* Don't clobber the smb cdevsw entry that was installed by the driverpeter1999-07-061-5/+1
| | | | framework.
* Quieten gcc paranoia.peter1999-07-062-4/+4
|
* Typo: s/0ff0/0xff0/peter1999-07-062-4/+4
|
* Trivial implementation of TIOCM{S|G}ET and TIOCMBI{S|C} ioctls. No needmarcel1999-07-062-2/+34
| | | | to convert the arguments.
* Implement SA_SIGINFO for i386. Thanks to Bruce Evans for much morecracauer1999-07-0610-131/+306
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | than a review, this was a nice puzzle. This is supposed to be binary and source compatible with older applications that access the old FreeBSD-style three arguments to a signal handler. Except those applications that access hidden signal handler arguments bejond the documented third one. If you have applications that do, please let me know so that we take the opportunity to provide the functionality they need in a documented manner. Also except application that use 'struct sigframe' directly. You need to recompile gdb and doscmd. `make world` is recommended. Example program that demonstrates how SA_SIGINFO and old-style FreeBSD handlers (with their three args) may be used in the same process is at http://www3.cons.org/tmp/fbsd-siginfo.c Programs that use the old FreeBSD-style three arguments are easy to change to SA_SIGINFO (although they don't need to, since the old style will still work): Old args to signal handler: void handler_sn(int sig, int code, struct sigcontext *scp) New args: void handler_si(int sig, siginfo_t *si, void *third) where: old:code == new:second->si_code old:scp == &(new:si->si_scp) /* Passed by value! */ The latter is also pointed to by new:third, but accessing via si->si_scp is preferred because it is type-save. FreeBSD implementation notes: - This is just the framework to make the interface POSIX compatible. For now, no additional functionality is provided. This is supposed to happen now, starting with floating point values. - We don't use 'sigcontext_t.si_value' for now (POSIX meant it for realtime-related values). - Documentation will be updated when new functionality is added and the exact arguments passed are determined. The comments in sys/signal.h are meant to be useful. Reviewed by: BDE
* Rename struct members sa_siginfo. POSIX reserves identifiers startingcracauer1999-07-0610-99/+99
| | | | | | | with sa_ when <signal.h> is included. They would conflict with the upcoming SA_SIGINFO implementation. Reviewed by: BDE
* Add Centaur/IDT WinChip support.green1999-07-062-2/+28
| | | | Why in the world do people put breaks at the end of a switch's default case?
* add in (controlled by option) 2200 Expanded Lun F/Wmjacob1999-07-061-4/+3818
|
* I made some cleanups, rearranged things a bit, and made AMD Features defaultgreen1999-07-062-94/+104
| | | | | | printing on CPUs that have it. If there are no objections, I'll MFC all recent changes (harmless, really) to 3.2 and PAO.
* suggestions from bde to clean up last checkin slightymjacob1999-07-061-4/+4
|
* add in a boot environment isp_disable flagmjacob1999-07-062-2/+22
|
* Wow- too much breakage..wait until you compile it, buckwheat...mjacob1999-07-052-4/+4
|
* Oops- got sense of ifdef wrongmjacob1999-07-052-4/+4
|
* add 2200 f/w; fix botched definemjacob1999-07-056-13/+3786
|
* add ISP_DISABLE_2200_SUPPORT defines; Add reference to 2200 F/Wmjacob1999-07-052-16/+28
|
* Remove ti_refill_rx_rings() and associated stuff; replace dirty RX bufferswpaul1999-07-054-154/+58
| | | | | | in ti_rxeof() instead. This doesn't really seem to provide much in the way of a performance boost, and I'm pretty sure it can cause mbuf leakage in some extreme cases.
* add another ISP optionmjacob1999-07-051-1/+2
|
* Let newuname return "Linux" as the OS name and not "FreeBSD". Also, return amarcel1999-07-052-6/+6
| | | | | more sensible (for Linux applications) release number. Hardcoding a release number has its drawbacks, but it will do for now.
* Also try to load the interpreter without prepending "emul_path". This allowsmarcel1999-07-051-7/+11
| | | | | | | | dynamicly linked binaries to run in a chroot'd environment with "emul_path" as the new root. The new behavior of loading interpreters is identical to the principle of overlaying. PR: 10145
* Update to latest version of PowerMACH Works from Olicom.lile1999-07-055-5135/+5170
|
* Reformat previous fix to remove an uglier than average goto.mckay1999-07-051-9/+11
| | | | Looked OK to: dg
* Fixed English errors, spelling errors and formatting errors in rev.1.51bde1999-07-051-7/+9
| | | | and rev.1.53.
* The IDA driver is 'ida', not 'id'msmith1999-07-052-6/+6
|
* Move the initialisation/tuning of nmbclusters from param.c/machdep.cmsmith1999-07-0511-84/+53
| | | | | | | | | | | | | | | into uipc_mbuf.c. This reduces three sets of identical tunable code to one set, and puts the initialisation with the mbuf code proper. Make NMBUFs tunable as well. Move the nmbclusters sysctl here as well. Move the initialisation of maxsockets from param.c to uipc_socket2.c, next to its corresponding sysctl. Use the new tunable macros for the kern.vm.kmem.size tunable (this should have been in a separate commit, whoops).
* Use the new tunable macros for the net.inet.tcp.tcbhashsize tunable.msmith1999-07-052-6/+4
|
* A couple of new macros to make implementing tunable values slightly easier.msmith1999-07-051-1/+21
|
* Take the Winbond driver out of GENERIC for the alpha. It'll comewpaul1999-07-052-4/+2
| | | | | back when it actually works on the alpha. How it got in here in the first place I have no idea.
* Add an extra space to " AMD Features=" to make it line up well.green1999-07-052-4/+4
|
* K6-III CPUs are now case:d in the appropriate switch; also, ingreen1999-07-052-8/+108
| | | | | | | | | | | | | print_AMD_info(), L2 internal cache is shown, as are AMD's special CPUID infos: CPU: AMD-K6(tm) 3D processor (350.81-MHz 586-class CPU) Origin = "AuthenticAMD" Id = 0x58c Stepping=12 Features=0x8021bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,PGE,MMX> AMD Features=0x808029bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,SYSCALL,PGE,MMX,3DNow!> PR: kern/12512 Submitted by: Louis A. Mamakos <louie@TransSys.COM>
* fix DEV_MODULE, I overlooked this one in my last commitphk1999-07-042-4/+4
|
* Remove cmaj and bmaj args from DEV_DRIVER_MODULE.phk1999-07-0427-93/+50
|
* Fixed corruption of the "blocked" list in lf_setlock() when tsleep()bde1999-07-041-17/+20
| | | | | | | | | | | returns 0 after ptrace() attach and/or detach doesn't quite quite deliver a signal. Perhaps the process shouldn't be woken in this case, but avoiding the problem is easy. PR: 12247 Fixed a couple of places where mechanical fixing of compiler warnings caused misspelling of NOLOCKF as NULL.
* Patch the WaveLAN/IEEE driver to detect and reject oversized receivedwpaul1999-07-042-4/+38
| | | | | | | | | | | frames (or just insane received packet lengths generated due to errors reading from the NIC's internal buffers). Anything too large to fit safely into an mbuf cluster buffer is discarded and an error logged. I have not observed this problem with my own cards, but on user has reported it and adding the sanity test seems reasonable in any case. Problem noted and patch provided by: Per Andersson <per@cdg.chalmers.se>
* Remove the 'tty' interrupt label. This is obsolete.nyan1999-07-042-6/+6
| | | | Pointed out by: NAKAJI Hiroyuki <nakaji@tutrp.tut.ac.jp>
* Quick fix for breakage of bounds checking in rev.1.12. Only onebde1999-07-041-2/+2
| | | | | | | | | of the additional checks in rev.1.12 was wrong. The others are a bit inconsistent and are probably unnecessarily pessimal. Checking for overflow of addition, if necessary at all, should be done in bpf_validate(). PR: 12484
* Minor nit - pn_cachesize is not a PN_RX_BUG_WAR varible.peter1999-07-041-3/+3
| | | | Also, a minor tweak to get better struct packing.
* Some cleanup and rearrangement. hw.physmem is now an absolute quantity;jlemon1999-07-042-242/+196
| | | | | | | | we will never use more memory than this value (if specified), but will always check memory for validity up to this amount. Get rid of the speculative_mprobe option; the memory amount can now be specified by hw.physmem.
* The vfs.write_behind sysctl and related code support has been added tomckusick1999-07-041-3/+40
| | | | | | | | | | | | | | | | allow changes to the filesystem's write_behind behavior. By the default the filesystem aggressively issues write_behind's. Three values may be specified for vfs.write_behind. 0 disables write_behind, 1 results in historical operation (agressive write_behind), and 2 is an experimental backed-off write_behind. The values of 0 and 1 are recommended. The value of 0 is recommended in conjuction with an increase in the number of NBUF's and the number of dirty buffers allowed (vfs.{lo,hi}dirtybuffers). Note that a value of 0 will radically increase the dirty buffer load on the system. Future work on write_behind behavior will use values 2 and greater for testing purposes. Submitted by: Matthew Dillon <dillon@apollo.backplane.com> Reviewed by: Kirk McKusick <mckusick@mckusick.com>
* The buffer queue mechanism has been reformulated. Instead of havingmckusick1999-07-0411-247/+399
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QUEUE_AGE, QUEUE_LRU, and QUEUE_EMPTY we instead have QUEUE_CLEAN, QUEUE_DIRTY, QUEUE_EMPTY, and QUEUE_EMPTYKVA. With this patch clean and dirty buffers have been separated. Empty buffers with KVM assignments have been separated from truely empty buffers. getnewbuf() has been rewritten and now operates in a 100% optimal fashion. That is, it is able to find precisely the right kind of buffer it needs to allocate a new buffer, defragment KVM, or to free-up an existing buffer when the buffer cache is full (which is a steady-state situation for the buffer cache). Buffer flushing has been reorganized. Previously buffers were flushed in the context of whatever process hit the conditions forcing buffer flushing to occur. This resulted in processes blocking on conditions unrelated to what they were doing. This also resulted in inappropriate VFS stacking chains due to multiple processes getting stuck trying to flush dirty buffers or due to a single process getting into a situation where it might attempt to flush buffers recursively - a situation that was only partially fixed in prior commits. We have added a new daemon called the buf_daemon which is responsible for flushing dirty buffers when the number of dirty buffers exceeds the vfs.hidirtybuffers limit. This daemon attempts to dynamically adjust the rate at which dirty buffers are flushed such that getnewbuf() calls (almost) never block. The number of nbufs and amount of buffer space is now scaled past the 8MB limit that was previously imposed for systems with over 64MB of memory, and the vfs.{lo,hi}dirtybuffers limits have been relaxed somewhat. The number of physical buffers has been increased with the intention that we will manage physical I/O differently in the future. reassignbuf previously attempted to keep the dirtyblkhd list sorted which could result in non-deterministic operation under certain conditions, such as when a large number of dirty buffers are being managed. This algorithm has been changed. reassignbuf now keeps buffers locally sorted if it can do so cheaply, and otherwise gives up and adds buffers to the head of the dirtyblkhd list. The new algorithm is deterministic but not perfect. The new algorithm greatly reduces problems that previously occured when write_behind was turned off in the system. The P_FLSINPROG proc->p_flag bit has been replaced by the more descriptive P_BUFEXHAUST bit. This bit allows processes working with filesystem buffers to use available emergency reserves. Normal processes do not set this bit and are not allowed to dig into emergency reserves. The purpose of this bit is to avoid low-memory deadlocks. A small race condition was fixed in getpbuf() in vm/vm_pager.c. Submitted by: Matthew Dillon <dillon@apollo.backplane.com> Reviewed by: Kirk McKusick <mckusick@mckusick.com>
* Add the semi-official Bulk protocol id 'P'n_hibma1999-07-031-1/+6
|
* Update pathnames for new location of soft-updates sources.jdp1999-07-031-4/+4
|
* Update comment for new location of soft-updates sources.jdp1999-07-033-6/+6
|
* Make the change similar to that suggested by Nick Hibma to avoid divide bymjacob1999-07-031-3/+4
| | | | | | | zero traps. I actually can't believe that this compiler is *sooooo* stupid that it did a divide when there was 1024L*1024L instead of a right shift by 20. When we get quad type modifiers in kernel printf we can change to this too (to avoid overflow on > terabyte disk sizes).
* printf int/dev_t (pointer) warningpeter1999-07-032-6/+6
|
* Delete stray static prototype.peter1999-07-031-2/+1
|
* Stop rfork(0) from panicing. (oops!!)peter1999-07-031-2/+3
| | | | Submitted by: Peter Holm <peter@holm.cc>
* Eliminate a bunch of #include "pci.h" and #if NPCI > 0 around entirepeter1999-07-0339-217/+60
| | | | files. config will leave the whole file out if configured to do so.
OpenPOWER on IntegriCloud