summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Per jlemon request, reintroduce some printf() when anluigi2001-11-293-9/+24
| | | | | | | | | | | | | | mbuf allocation fails, and fix (i hope) a couple of style bugs. I believe these printf() are extremely dangerous because now they can occur on every incoming packet and are not rate limited. They were meant to warn the sysadmin about lack of resources, but now they can become a nice way to panic your system under load. Other drivers (e.g. the fxp driver) have nothing like this. There is a pending discussion on putting this kind of warnings elsewhere, and I hope we can fix this soon.
* For i386 architecture, remove an expensive m_devget() (and theluigi2001-11-292-62/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | underlying unaligned bcopy) on incoming packets that are already available (albeit unaligned) in a buffer. The performance improvement varies, depending on CPU and memory speed, but can be quite large especially on slow CPUs. I have seen over 50% increase on forwarding speed on the sis driver for the 486/133 (embedded systems), which does exactly the same thing. The behaviour is controlled by a sysctl variable, hw.dc_quick which defaults to 1. Set it to 0 to restore the old behaviour. After running a few experiments (in userland, though) I am convinced that doing the m_devget() is detrimental to performance in almost all cases. Even if your CPU has degraded performance with misaligned data, the bcopy() in the driver has the same overhead due to misaligment as the one that you save in the uiomove(), plus you do one extra copy and pollute the cache. But more often than not, you do not even have to touch the payload, e.g. when you are forwarding packets, and even in the often-cited case of NFS, you often end up passing a pointer to the payload to the disk controller. In any case, you can play with the sysctl variable to toggle between the two behaviours, and see if it makes a difference. MFC-after: 3 days
* fix DIAGNOSTIC panic caused by proc/thread typogallatin2001-11-291-1/+1
| | | | tested by: Martijn Pronk <martijn@smartie.xs4all.nl>
* Return a POSIX-compliant error for write(2) failure.green2001-11-281-1/+1
|
* o Cache req->td->td_proc->p_ucred->cr_prison in pr to improverwatson2001-11-281-13/+10
| | | | | | | | | | readability. o Conditionalize only the SYSCTL definitions for the regression tree, not the variables itself, decreasing the number of #ifdef REGRESSIONs scattered in kern_mib.c, and making the code more readable. Sponsored by: DARPA, NAI Labs
* When a socket is not connected, allow the peer "struct sockaddr"archie2001-11-282-13/+77
| | | | | | | | to be included in the meta information that is associated with incoming and outgoing packets. Reviewed by: julian MFC after: 1 week
* Fix indentation after removing GEMDOS support. Whitespace changes only.jhb2001-11-281-14/+14
|
* Use suser_td() instead of explicitly checking cr_uid against 0.jhb2001-11-282-3/+3
| | | | | | PR: kern/21809 Submitted by: <mbendiks@eunet.no> Reviewed by: rwatson
* Whitespace fixes so thre 386 versoion of __uint8_swap_uint32 is easier tojhb2001-11-281-2/+4
| | | | read.
* Remove ciss from the modules build until the build issues are resolved.imp2001-11-281-1/+1
|
* Axe more unused GEMDOS code that was #ifdef atari.jhb2001-11-284-44/+1
| | | | | PR: kern/21809 Submitted by: <mbendiks@eunet.no>
* Fix a typo in a commentbrian2001-11-281-1/+1
|
* Remove the need for an expensive m_devget on the i386, which does notluigi2001-11-281-39/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | have alignment problems. On small boxes (e.g. the net4501 from Soekris, featuring a 486/133) this provides huge performance benefits: the peak forwarding rate with avg.sized packets goes up by 50-70% because of this change alone. Faster CPUs might benefit less from this change, but in any case the CPU has better things to do than waste time on useless memory-to-memory copies. Several drivers (for Tulip-like cards) might benefit from a similar change. Right now the new behaviour is controlled by a sysctl variable, hw.sis_quick which defaults to 1 (on), you can set it to 0 to reintroduce the old behaviour (and compare the results). The variable is only there to show how much you can gain with this change, it will go away soon. Also, slightly simplify the code to initialize the ring buffers, and remove a couple of dangerous printf's which could trigger on any packet in case of mbuf shortage. MFC-after: 3 days
* Waits for a keypress before rebooting on panic.dcs2001-11-281-0/+3
| | | | | | PR: kern/32351 Submitted by: Jonathan Mini <mini@haikugeek.com> MFC after: 1 week
* Regen after addition of the Mustek 1200 CU Plus scanner.sobomax2001-11-282-0/+7
| | | | Submitted by: "Ilmar S. Habibulin" <ilmar@watson.org>
* Add Mustek 1200 CU Plus scanner.sobomax2001-11-282-0/+2
| | | | Submitted by: "Ilmar S. Habibulin" <ilmar@watson.org>
* Yet another synch with minor changes in the ACPI CA 20011120 snapshot.iwasaki2001-11-281-0/+14
| | | | We need to call AcpiEnterSleepStatePrep() before AcpiEnterSleepState().
* Add Buffalo AirStation 11Mbps CF WLAN card.imp2001-11-281-0/+1
| | | | Obtained from: NetBSD (ichiro)
* Sync to 1.24imp2001-11-281-2/+8
|
* Merge from NetBSD:imp2001-11-281-1/+3
| | | | | | | 1.147 (my changes to sync to FreeBSD's file) 1.148 Buffalo AirStation CFtytpe WLAN Card (ichiro) 1.149 IBM SCSI PCMCIA (yamt) 1.150 <restore 1.148 lost in 1.149> (enami)
* Synch with minor changes in the ACPI CA 20011120 snapshot.msmith2001-11-285-13/+13
|
* Merge local changes.msmith2001-11-289-440/+575
| | | | | Add a fix for a minor error in the PCI routing table creation handler where the correct size for the buffer is not returned.
* This commit was generated by cvs2svn to compensate for changes in r87031,msmith2001-11-2889-3982/+3280
|\ | | | | | | which included commits to RCS files with non-trunk default branches.
| * Vendor import of the Intel ACPI CA 20011120 snapshot.msmith2001-11-2897-4422/+3853
| |
* | Return a more meaningful errno when the length of the interpreterjwd2001-11-282-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | exceeds MAXSHELLCMDLEN to avoid secondary /bin/sh execution. Update execve man page to reflect change. Increase MAXSHELLCMDLEN to a slightly more meaningful value. PR: kern/32106 Submitted by: b@etek.chalmers.se Reviewed by: bsd MFC after: 2 weeks
* | Dont print the sysctl node tree unless you're root.peter2001-11-281-0/+5
| | | | | | | | Found by: jkb (Yahoo OS troublemaker)
* | Change to using my custom sparc64 binutils.obrien2001-11-281-8/+10
| |
* | Clean up some of the gross macros whitespace wise before I fix the asmjhb2001-11-281-20/+22
| | | | | | | | constraints.
* | Add the 'ciss' driver, which supports the Compaq SmartRAID 5* family ofmsmith2001-11-279-0/+4643
| | | | | | | | | | | | | | | | | | RAID controllers (5300, 532, 5i, etc.) Thanks to Compaq and Yahoo! for support during the development of this driver. MFC after: 1 week
* | Remove GEMDOS support from msdosfs. I don't think anyone is going tojhb2001-11-272-130/+0
| | | | | | | | port FreeBSD to Atari machines any time soon.
* | Document the "console" setting in loader.conf, suggesting vidconsolerwatson2001-11-271-0/+6
| | | | | | | | or comconsole.
* | ipfw_modevent(): Don't use an unnatural block to define a variabledd2001-11-271-3/+0
| | | | | | | | | | | | | | (fcp) that's already defined in the outer block and isn't used anywhere else. This silences -Wunused. Reviewed by: md5(1)
* | Remove debugging printfs that weren't conditional on any debuggingdd2001-11-271-2/+0
| | | | | | | | options in handling MOD_{UN,}LOAD (they weren't very useful, anyway).
* | In icmp_reflect(): If the packet was not addressed to us and wasdd2001-11-271-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | received on an interface without an IP address, try to find a non-loopback AF_INET address to use. If that fails, drop it. Previously, we used the address at the top of the in_ifaddrhead list, which didn't make much sense, and would cause a panic if there were no AF_INET addresses configured on the system. PR: 29337, 30524 Reviewed by: ru, jlemon Obtained from: NetBSD
* | Implement a "kill" DDB command which is an interface to psignal() thatdd2001-11-271-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | respects locks. Before SMPng, one was able to call psignal() using the "call" command, but this is no longer possible because it does not respect locks by itself. This is very useful when one has gotten their machine into a state where it is impossible to spawn ps/kill or su to root. In this case, respecting locks essentially means trying to aquire the proc lock before calling psignal(). We can't block in the debugger, so if trylock fails, the operation fails. This also means that we can't use pfind(), since that will attempt to lock the process for us. Reviewed by: jhb
* | Add include of net/route.h, as structures moved around due to therwatson2001-11-271-0/+1
| | | | | | | | | | syncache rely on 'struct route' being defined. This fixes the LINT build some.
* | Fix a bug in the driver -- under load, the receive unit could becomeluigi2001-11-272-14/+13
| | | | | | | | | | | | | | | | | | idle and the driver would not detect the event, requiring userland to cycle the interface to bring it up again. The fix consists in adding SIS_IMR_RX_IDLE to the interrupt mask and add a command in sis_intr() to restart the receiver when this happens. While at it, make the test of status bits more efficient.
* | Don't automatically unbind/deallocate memory when releasing.ru2001-11-272-20/+12
| | | | | | | | | | | | | | This fixes the VT switching problem with the i810 X driver. Explained by: David Dawes <dawes@XFree86.Org> Reviewed by: dfr
* | fixed the cast128 calculation with a short cipher key length.ume2001-11-273-5/+19
| | | | | | | | | | | | | | the memory was overridden when the key length was less than 16 bytes. Obtained from: KAME MFC after: 1 week
* | Add support for a last-close handler.des2001-11-273-3/+38
| | | | | | | | | | Revert the module version bumps; they're quite pointless as long as the only pseudofs consumer is linprocfs, which is in the tree.
* | Clear a new syncache entry first, followed by filling in values. Thistanimura2001-11-271-4/+4
| | | | | | | | fixes route breakage due to uncleared gabage on my box.
* | When servicing an internal FTP server, punch ipfirewall(4) holesru2001-11-271-5/+2
| | | | | | | | | | | | | | | | | | for passive mode data connections (PASV/EPSV -> 227/229). Well, the actual punching happens a bit later, when the aliasing link becomes fully specified. Prodded by: Danny Carroll <dannycarroll@hotmail.com> MFC after: 1 week
* | Minor tweaks to the TLB handling code - avoid movl instructions and adddfr2001-11-272-26/+26
| | | | | | | | | | itc.x instructions to attempt to avoid the little flurry of TLB exceptions for handling access, dirty etc.
* | Fix mounting root from a ISO9660 filesystem on a SCSI CDROM.ken2001-11-272-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was that the ISO9660 code wasn't opening the device prior to issuing ioctl calls. In particular, the device must be open before iso_get_ssector() is called in iso_mountroot(). If the device isn't opened first, the disk layer blows up due to an uninitialized variable. The solution was to open the device, call iso_get_ssector() and then close it again. The ATAPI CDROM driver doesn't have this problem because it doesn't use the disk layer, and evidently doesn't mind if someone issues an ioctl without first issuing an open call. Thanks to phk for pointing me at the source of this problem. Tested by: dirk MFC after: 1 week
* | Bring the probe inquiry code in line with the SCSI spec.ken2001-11-271-43/+35
| | | | | | | | | | | | | | | | | | | | It is legal to have a device with device type 0x1f, that just means that the device is of unknown type. Instead, only check the peripheral qualifier when deciding whether or not to reject a device based on its inquiry information. Tested by: julian MFC after: 3 weeks
* | Replace 'p' with 'td' as appropriate.jhb2001-11-272-25/+25
| |
* | GC compat macros HASHINIT, VOP__LOCK, VOP__UNLOCK, VGET, and VN_LOCK.jhb2001-11-278-38/+25
| |
* | Expand LOCKMGR() compat macro.jhb2001-11-276-15/+17
| |
* | GC some KSE compatiblity macros that were somehow still here.jhb2001-11-262-33/+23
| |
* | GC non-FreeBSD code that didn't work anyways.jhb2001-11-269-821/+6
| |
OpenPOWER on IntegriCloud