summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Bump the shared library version number for the bsnmp v1.6 importharti2004-04-141-1/+1
| | | | because of incompatible interface changes.
* Unbreak the DDB build by replacing #includes that were deleted.njl2004-04-141-0/+2
| | | | | Pointed out by: Tai-hwa Liang, Xin LI Pointed hat to: njl
* This commit was generated by cvs2svn to compensate for changes in r128237,harti2004-04-1424-235/+704
|\ | | | | | | which included commits to RCS files with non-trunk default branches.
| * Import of bsnmpd 1.6harti2004-04-1424-235/+704
| |
| * Remove these files from the vendor branch where they accidentallyharti2004-01-261-26/+0
| | | | | | | | where put by my wrong import.
* | Put the name of the module first in the list of all .Nm calls withharti2004-04-142-0/+2
| | | | | | | | | | argument. This makes the output of calling .Nm without an argument more senseful later on.
* | Compare with 0 if comparing an integer, not with NULL.harti2004-04-142-2/+2
| |
* | Move the SNMP MIBs and tree definitions from /usr/share/bsnmp toharti2004-04-145-11/+22
| | | | | | | | | | /usr/share/snmp. This mirrors the use of /usr/local/share/snmp and makes also more sense when non-bsnmp-specific MIBs go in.
* | Document the "return" built-in better: it will exit . (sources) andgreen2004-04-141-1/+7
| | | | | | | | the top-level shell instance, too.
* | The newpcm headers currently #define away INTR_MPSAFE and INTR_TYPE_AVgreen2004-04-1414-22/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | because they bogusly check for defined(INTR_MPSAFE) -- something which never was a #define. Correct the definitions. This make INTR_TYPE_AV finally get used instead of the lower-priority INTR_TYPE_TTY, so it's quite possible some improvement will be had on sound driver performance. It would also make all the drivers marked INTR_MPSAFE actually run without Giant (which does seem to work for me), but: INTR_MPSAFE HAS BEEN REMOVED FROM EVERY SOUND DRIVER! It needs to be re-added on a case-by-case basis since there is no one who will vouch for which sound drivers, if any, willy actually operate correctly without Giant, since there hasn't been testing because of this bug disabling INTR_MPSAFE. Found by: "Yuriy Tsibizov" <Yuriy.Tsibizov@gfk.ru>
* | Include <sys/proc.h> instead of depending on namespace pollution inbde2004-04-141-11/+9
| | | | | | | | | | | | | | | | | | | | | | <sys/user.h> for the definition of TDF_SINTR. Fixed anachronous spelling of TDF_SINTR in a comment Demangled VCS ids. There were 2 misplaced copies of $FreeBSD$ and of the include before it. The vendor id infrastructure was edited. Fixed the only other remaining style bug since rev.1.1 (expansion of struct member names made a line too long).
* | Include <sys/proc.h> for the definition of PS_INMEM instead ofbde2004-04-141-3/+2
| | | | | | | | | | | | depending on namespace pollution in <sys/user.h>. Reduced nearby include messes.
* | Continue my efforts to imitate Windows as closely as possible bywpaul2004-04-1410-206/+468
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | attempting to duplicate Windows spinlocks. Windows spinlocks differ from FreeBSD spinlocks in the way they block preemption. FreeBSD spinlocks use critical_enter(), which masks off _all_ interrupts. This prevents any other threads from being scheduled, but it also prevents ISRs from running. In Windows, preemption is achieved by raising the processor IRQL to DISPATCH_LEVEL, which prevents other threads from preempting you, but does _not_ prevent device ISRs from running. (This is essentially what Solaris calls dispatcher locks.) The Windows spinlock itself (kspin_lock) is just an integer value which is atomically set when you acquire the lock and atomically cleared when you release it. FreeBSD doesn't have IRQ levels, so we have to cheat a little by using thread priorities: normal thread priority is PASSIVE_LEVEL, lowest interrupt thread priority is DISPATCH_LEVEL, highest thread priority is DEVICE_LEVEL (PI_REALTIME) and critical_enter() is HIGH_LEVEL. In practice, only PASSIVE_LEVEL and DISPATCH_LEVEL matter to us. The immediate benefit of all this is that I no longer have to rely on a mutex pool. Now, I'm sure many people will be seized by the urge to criticize me for doing an end run around our own spinlock implementation, but it makes more sense to do it this way. Well, it does to me anyway. Overview of the changes: - Properly implement hal_lock(), hal_unlock(), hal_irql(), hal_raise_irql() and hal_lower_irql() so that they more closely resemble their Windows counterparts. The IRQL is determined by thread priority. - Make ntoskrnl_lock_dpc() and ntoskrnl_unlock_dpc() do what they do in Windows, which is to atomically set/clear the lock value. These routines are designed to be called from DISPATCH_LEVEL, and are actually half of the work involved in acquiring/releasing spinlocks. - Add FASTCALL1(), FASTCALL2() and FASTCALL3() macros/wrappers that allow us to call a _fastcall function in spite of the fact that our version of gcc doesn't support __attribute__((__fastcall__)) yet. The macros take 1, 2 or 3 arguments, respectively. We need to call hal_lock(), hal_unlock() etc... ourselves, but can't really invoke the function directly. I could have just made the underlying functions native routines and put _fastcall wrappers around them for the benefit of Windows binaries, but that would create needless bloat. - Remove ndis_mtxpool and all references to it. We don't need it anymore. - Re-implement the NdisSpinLock routines so that they use hal_lock() and friends like they do in Windows. - Use the new spinlock methods for handling lookaside lists and linked list updates in place of the mutex locks that were there before. - Remove mutex locking from ndis_isr() and ndis_intrhand() since they're already called with ndis_intrmtx held in if_ndis.c. - Put ndis_destroy_lock() code under explicit #ifdef notdef/#endif. It turns out there are some drivers which stupidly free the memory in which their spinlocks reside before calling ndis_destroy_lock() on them (touch-after-free bug). The ADMtek wireless driver is guilty of this faux pas. (Why this doesn't clobber Windows I have no idea.) - Make NdisDprAcquireSpinLock() and NdisDprReleaseSpinLock() into real functions instead of aliasing them to NdisAcaquireSpinLock() and NdisReleaseSpinLock(). The Dpr routines use KeAcquireSpinLockAtDpcLevel() level and KeReleaseSpinLockFromDpcLevel(), which acquires the lock without twiddling the IRQL. - In ndis_linksts_done(), do _not_ call ndis_80211_getstate(). Some drivers may call the status/status done callbacks as the result of setting an OID: ndis_80211_getstate() gets OIDs, which means we might cause the driver to recursively access some of its internal structures unexpectedly. The ndis_ticktask() routine will call ndis_80211_getstate() for us eventually anyway. - Fix the channel setting code a little in ndis_80211_setstate(), and initialize the channel to IEEE80211_CHAN_ANYC. (The Microsoft spec says you're not supposed to twiddle the channel in BSS mode; I may need to enforce this later.) This fixes the problems I was having with the ADMtek adm8211 driver: we were setting the channel to a non-standard default, which would cause it to fail to associate in BSS mode. - Use hal_raise_irql() to raise our IRQL to DISPATCH_LEVEL when calling certain miniport routines, per the Microsoft documentation. I think that's everything. Hopefully, other than fixing the ADMtek driver, there should be no apparent change in behavior.
* | Style cleanups, M_ZERO instead of bzero.njl2004-04-141-22/+20
| |
* | Style cleanups, use M_ZERO instead of bzero, unify the !semaphore andnjl2004-04-141-44/+43
| | | | | | | | semaphore return paths.
* | Style cleanup, plus properly backup partial resource allocation innjl2004-04-141-44/+51
| | | | | | | | AcpiOsInstallInterruptHandler() in the case of failure to initialize.
* | Style cleanups to reduce diffs to locking tree.njl2004-04-145-111/+91
| |
* | Style and printf message cleanups.njl2004-04-141-138/+79
| |
* | Use METHOD_VIDEO instead of the method string itself.njl2004-04-142-2/+2
| | | | | | | | Pointed out by: Andrew Thompson
* | Use TRUE for a boolean and a style nit.njl2004-04-141-2/+1
| |
* | sx was randomly added to NOTES. Instead, place it in the miscimp2004-04-142-12/+10
| | | | | | | | | | | | | | hardware in properly sorted order. Fix a little disorder while I'm here. Submitted by: bde
* | Update the name for edge triggered for the 20040402 import.njl2004-04-141-1/+1
| |
* | Prefer uint16_t to ushort.imp2004-04-141-1/+1
| | | | | | | | Submitted by: bde
* | Check in files with local changes:njl2004-04-142-8/+20
| | | | | | | | | | | | | | | | | | * In the resume path, give up after waiting for a while for WAK_STS to be set. Some BIOSs never set it. * Allow access to the field if it is within the region size rounded up to a multiple of the access byte width. This overcomes "off-by-one" programming errors in the AML often found in Toshiba laptops.
* | Check in unmodified files off the vendor branch.njl2004-04-143-29/+42
| |
* | This commit was generated by cvs2svn to compensate for changes in r128212,njl2004-04-1432-222/+808
|\ \ | | | | | | | | | which included commits to RCS files with non-trunk default branches.
| * | Import ACPI-CA 20040402 distribution.njl2004-04-1437-259/+870
| | |
* | | Add another cleanfile for future imports.njl2004-04-141-2/+2
| | |
* | | In an effort to simplify the routing code, try to deprecate rtalloc()luigi2004-04-142-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | in favour of rtalloc_ign(), which is what would end up being called anyways. There are 25 more instances of rtalloc() in net*/ and about 10 instances of rtalloc_ign()
* | | Staticize <if>_clone_{create,destroy} functions.brooks2004-04-146-24/+24
| | | | | | | | | | | | Reviewed by: mlaier
* | | A simple cache of uid->uname lookups and gid->gname lookups eliminateskientzle2004-04-143-12/+60
| | | | | | | | | | | | | | | almost 1/2 of the CPU time required to create an uncompressed archive and makes a noticable reduction in wallclock time.
* | | Add support for video output switching. It appears no systems use HCI tonjl2004-04-143-20/+163
| | | | | | | | | | | | | | | | | | | | | | | | change the video output but use a separate device with a DSSX method and a HID of "TOS6201" instead. We use a pseudo-driver to get the handle for this object and pass it to the acpi_toshiba driver. This is untested but seems to match the Linux Toshiba driver.
* | | When all the links to a file have been dumped, don't forgetkientzle2004-04-131-1/+3
| | | | | | | | | | | | to free() the memory used to store the filename.
* | | Eliminate a lot of malloc/free calls by usingkientzle2004-04-131-4/+11
| | | | | | | | | | | | | | | a stack-allocated buffer for safe_fprintf formatting. Only if the result is too large do we resort to malloc.
* | | * Plug a buffer overrun in ACL parsing. (archive_entry.c)kientzle2004-04-1312-51/+99
| | | | | | | | | | | | | | | | | | | | | * Re-use a single buffer for shar output formatting rather than hammering the heap. (archive_write_set_format_shar.c) * Fix a handful of minor memory leaks and clean up some of the memory-management code.
* | | Adding man page for 3ware's 9000 series storage controller driver (twa).vkashyap2004-04-131-0/+86
| | | | | | | | | | | | Reviewed by: ru
* | | Manpage changes suggested by Irina Liakh.kientzle2004-04-132-21/+50
| | | | | | | | | | | | Also, add -h as a synonym for -H, for Linux Standards Base compliance.
* | | Boomerang 10/100BT (found in 2c905-TX) chips apparently suffer theimp2004-04-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | same problems as their Hurricane 575* bretheren in that one could set the memory mapped port, but that has no effect. Add a quirk for this. # I'll have to see if I can dig up documentation on these parts to see # if there's someway software can know this other than a table...
* | | Some devices have what appear to be invalid BARs. They are invalid inimp2004-04-131-26/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the sense that any write to them reads back as a 0. This presents a problem to our resource allocation scheme. If we encounter such vars, the code now treats them as special, allowing any allocation against them to succeed. I've not seen anything in the standard to clearify what host software should do when it encounters these sorts of BARs. Also cleaned up some output while I'm here and add commmented out bootverbose lines until I'm ready to reduce the verbosity of boot messages. This gets a number of south bridges and ata controllers made mostly by VIA, AMD and nVidia working again. Thanks to Soren Schmidt for his help in coming up with this patch.
* | | Fix examples.fjoe2004-04-132-4/+4
| | |
* | | Use ifconfig(8) for setting common 802.11 parameters.fjoe2004-04-138-449/+281
| | | | | | | | | | | | Submitted by: Stanislav A. Svirid <count@riss-telecom.ru>
* | | Add Direct Sequence 354K and 512K (needed for arl(4)).fjoe2004-04-131-0/+8
| | |
* | | Update version strings for Heimdal: 0.6 -> 0.6.1nectar2004-04-133-6/+6
| | |
* | | Remove extra copy of code.imp2004-04-131-7/+0
| | | | | | | | | | | | Noticed by: Carlos Velasco
* | | Massive cleanup of the code removing global variables toluigi2004-04-131-206/+199
| | | | | | | | | | | | | | | | | | | | | | | | pass function arguments and results. Hopefully no functional changes except fixing a couple of bugs which could cause endless loops if an ioctl() on an interface would fail.
* | | Enable the sx driver on i386 and pc98.nyan2004-04-132-1/+5
| | |
* | | Use headers from the kernel source tree rather than installed headers.des2004-04-131-1/+1
| | | | | | | | | | | | Submitted by: ru
* | | Add a kernel-toolchain target which only builds the bits required to builddes2004-04-132-2/+4
| | | | | | | | | | | | | | | | | | | | | a kernel. This is essentially the same as the toolchain target, except that it does not build headers and libraries. Submitted by: ru
* | | Mark the "obj" target with the .PHONY attribute.ru2004-04-131-1/+1
| | |
* | | Back out previous commit, it was unintentional.luigi2004-04-131-1/+1
| | | | | | | | | | | | | | | | | | Keep WARNS at 3 though the code does compile with WARNS=5 at least on i386 Noticed by: ru
OpenPOWER on IntegriCloud