summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* - Clean up a bit after the most recent KSE restructuring.jeff2006-12-291-206/+201
|
* A node that implements Predictor-1 compression for PPP.glebius2006-12-292-0/+781
| | | | Submitted by: Alexander Motin <mav alkar.net>
* Piggyback watchdog timer handling with msk_tick which is called everyyongari2006-12-292-13/+9
| | | | | hz. This will result in slightly faster Tx processing as it does not need lock operations for callouts in msk_start/msk_txeof.
* Fix interrupt handling on a dual port card. Previously it ignoredyongari2006-12-291-10/+6
| | | | | | | the second port interrupt if the first port was in down state. Since I don't have a dual port card it's just guess work. Noticed by: jhb
* Fix MSI support. Now it correctly allocates SYS_RES_IRQ resourcesyongari2006-12-292-27/+55
| | | | | | | on Yukon II which reports it can handle two messages. Submitted by: jhb Tested by: bms
* Regenerate.rwatson2006-12-293-17/+17
|
* Assign or clean up audit identifiers for a number of additional Linuxrwatson2006-12-291-18/+19
| | | | | | | | | system calls on the amd64 architecture. Some minor white space tweaks for consistency with other syscalls.master files. Obtained from: TrustedBSD Project
* In cpu_reset(), call OF_reboot() instead of OF_exit(). The lattermarcel2006-12-282-2/+4
| | | | | doesn't do a reboot and has been observed to reset the NVRAM to its default values.
* Add missing include guards to mac_internal.h, update include guards inrwatson2006-12-282-3/+8
| | | | | | mac_policy.h following move to new location in src/sys/security/mac. Obtained from: TrustedBSD Project
* Update a number of comments:rwatson2006-12-284-23/+22
| | | | | | | | | | | | - Replace XXX with Note: in several cases where observations are made about future functionality rather than problems or bugs. - Remove an XXX comment about byte order and au_to_ip() -- IP headers must be submitted in network byte order. Add a comment to this effect. - Mention that we don't implement select/poll for /dev/audit. Obtained from: TrustedBSD Project
* Remove XXX comments about EA transaction support and provide a morerwatson2006-12-281-6/+11
| | | | | | | general and detailed comment on the topic of EA transactions and kernel warnings. Obtained from: TrustedBSD Project
* Remove an inaccurate comment I added regarding storage for mbuf tagrwatson2006-12-281-7/+0
| | | | | | labels: they are in fact stored in the tag directly. Obtained from: TrustedBSD Project
* In mac_inpcb_sosetlabel(), assert the socket lock rather than commentingrwatson2006-12-281-1/+1
| | | | | | that we should assert the socket lock. Obtained from: TrustedBSD Project
* Update __FreeBSD_version check for pci_find_extcap() now that it isjhb2006-12-281-1/+1
| | | | present in 6.x.
* Centralize definition of MAC_VERSION in mac_policy.h, as it defines therwatson2006-12-283-6/+19
| | | | | | | | | | kernel<->policy ABI version. Add a comment to the definition describing it and listing known versions. Modify MAC_POLICY_SET() to reference the current kernel version by name rather than by number. Staticize mac_late, which is used only in mac_framework.c. Obtained from: TrustedBSD Project
* Move mac_init_label() and mac_destroy_label() from mac_framework.c torwatson2006-12-282-29/+31
| | | | | | | mac_label.c, and use these instead of replicated code in the label zone constructor and destructor. Obtained from: TrustedBSD Project
* Trim unneeded includes.rwatson2006-12-282-48/+0
|
* Break contents of kern_mac.c out into two files following a repo-copy:rwatson2006-12-284-2503/+2
| | | | | | | | | | | mac_framework.c Contains basic MAC Framework functions, policy registration, sysinits, etc. mac_syscalls.c Contains implementations of various MAC system calls, including ENOSYS stubs when compiling without options MAC. Obtained from: TrustedBSD Project
* Update MAC Framework general comments, referencing various interfaces itrwatson2006-12-283-36/+120
| | | | | | | | | | | | | | consumes and implements, as well as the location of the framework and policy modules. Refactor MAC Framework versioning a bit so that the current ABI version can be exported via a read-only sysctl. Further update comments relating to locking/synchronization. Update copyright to take into account these and other recent changes. Obtained from: TrustedBSD Project
* A node that implements the Deflate sub-protocols of the Compression Controlglebius2006-12-282-0/+768
| | | | | | Protocol (CCP). Submitted by: Alexander Motin <mav alkar.net>
* Before this commit, if the compression is enabled the, ng_ppp(4)glebius2006-12-282-48/+127
| | | | | | | | | | | | | | | | | | | | | | | | | node would send every outgoing frame to the "compress" hook. Packets received on the "compress" hook were expected to be compressed and PROT_COMPD tag was put on them unconditionally. After this commit an alternative compression mode can be set. In this mode the node doesn't put the PROT_COMPD, the compressor should put it itself. This is important for such kind of compressors, that can submit uncompressed frames. Before this commit, if the decompression is enabled, the ng_ppp(4) node would send and incoming frame to the "decompress" hook only if it has the PROT_COMPD proto tag on it. After this commit an alternative decompression mode can be set. In this mode the node sends all the incoming packets to the decompression hook. This is important for such kind of compressors that need uncompressed packets too, to keep their library in sync. These new features will be used in new version of mpd4, and in new compressor nodes. Submitted by: Alexander Motin <mav alkar.net>
* Removed gratuitous cosmetic differences with the i386 version. Thisbde2006-12-281-7/+7
| | | | | | | | | | | mainly involves removing all __CC_SUPPORTS___INLINE__ ifdefs. These ifdefs are even less needed for amd64 than for i386, but the i386 atomic.h never had them. The ifdefs here were just an optimization of obsolescent compatibility cruft (__inline) for a null set of compilers. I think null sets of compilers should only be supported in cases where this is more than an optimization, doesn't require extensive ifdefs, and only involves not-so-obsolescent compatibility cruft (plain inline here).
* Disable MSI on the Intel E7505 chipset. It is reported broken on a Tyanjhb2006-12-281-0/+6
| | | | | | S2665ANF motherboard. Reported by: "Eugene M. Kim" <blue at white lv>
* o unbreak rate set defaultingsam2006-12-281-5/+3
| | | | | | o mark 11g mode support on finding 11g or pure 11g (OFDM-only) channels; was requiring pure 11g which caused some contortions in drivers that manually setup their channel lists
* Fix shared authentication mode.jkim2006-12-281-0/+8
|
* Avoid an instruction in atomic_cmpset_{int_long)() in most cases.bde2006-12-272-21/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These functions are used a lot for mutexes, so this reduces the text size of an average kernel by about 0.75%. This wasn't intended to be a significant optimization, but it somehow increased the maximum number of packets per second that can be transmitted by my bge hardware from 320000 to 460000 (this benchmark is CPU-bound and remarkably sensitive to changes in the text section). Details: we would prefer to leave the result of the cmpxchg in %al, but cannot tell gcc that it is there, so we have to convert it to an integer register. We converted to %al, then to %[re]ax, but the latter step is usually wasted since gcc usually only wants the condition code and can recover it from %al just as easily as from %[re]ax. Let gcc promote %al in the few cases where this is needed. Nearby style fixes; - let gcc manage the load of `res', and don't abuse `res' for a copy of `exp' - don't echo `res's name in comments - consistently spell the condition code as 'e' after comparison for equality - don't hard-code %al anywhere except in constraints - for the version that doesn't use cmpxchg, there is no requirement to use %al anywhere, so don't hard-code it in the constraints either. Style non-fix: - for the versions that use cmpxchg, keep using "a" (was %[re]ax, now %al) for the main output operand, although this is not required. The input and output operands that use the "a" constraint are now decoupled, and this makes things clearer except for the reason that the output register is hard-coded. It is now just a hack to tell gcc that the input "a" has been clobbered without increasing the number of operands.
* Add half/quarter rate 11a channel support:sam2006-12-272-63/+112
| | | | | | | | | | | | | | | | | o change handling of regdomain-related mib knobs so they can be set post-attach: regdomain, countrycode, outdoor, and xchanmode; the hal will not permit changing the regdomain but we expose it for now o on regdomain/countrycode change recalculate the channel list and push it to the net80211 layer (NB: looks to need more tweaking) o setup rate tables for half/quarter rate channels o honor half/quarter rate channel configs when changing channels o honor half/quarter rate channel configs when setting the slot time o use hack/nonstandard channel numbering scheme for the public safety band to avoid overlapping 2.4G channels on dual-band cards o remove setup of ic_sup_rates; the net80211 layer can do this for us and it simplifies handling of half/quarter rate channels Tested only in Public Safety Band with cards that have RF5112.
* First cut at half/quarter-rate 11a channel support (e.g. for usesam2006-12-277-52/+130
| | | | | | | | | | | | | | | | | | | | in the Public Safety Band): o add channel flags to identify half/quarter-rate operation o add rate sets (need to check spec on 4Mb/s in 1/4 rate) o add if_media definitions for new rates o split net80211 channel setup out into ieee80211_chan_init o fixup ieee80211_mhz2ieee and ieee80211_ieee2mhz to understand half/quarter rate channels: note we temporarily use a nonstandard/hack numbering that avoids overlap with 2.4G channels because we don't (yet) have enough state to identify and/or map overlapping channel sets o fixup ieee80211_ifmedia_init so it can be called post attach and will recalculate the channel list and associated state; this enables changing channel-related state like the regulatory domain after attach (will be needed for 802.11d support too) o add ieee80211_get_suprates to return a reference to the supported rate set for a given channel o add 3, 4.5, and 27 MB/s tx rates to rate <-> media conversion routines o const-poison channel arg to ieee80211_chan2mode
* After rev.1.169, the "interrupt" coalescing parameters are not used inbde2006-12-261-8/+2
| | | | | | | bge_intr(). Some of them are used in bge_poll(). Simplify by only initializing these for polling mode and not toggling them when switching modes. This also fixes missing synchronization with the coalescing engine in the toggling.
* Back out revision 1.33. usb/98983 was misfiled and the patch had no effect.jkim2006-12-261-2/+0
| | | | | | The originator confirmed the adapter works fine without the patch. Tested by: Massimo Lusetti (mlusetti at gmail dot com)
* turn non-INVARIANT KASSERT into an empty but real Ckmacy2006-12-261-2/+5
| | | | | statement so that syntax errors will still be caught even if INVARIANTS aren't enabled in the config file
* add entry points required by newer broadcom wireless driversam2006-12-251-0/+77
| | | | | | PR: kern/106131 Submitted by: Scot Hetzel MFC after: 2 weeks
* Fix builddelphij2006-12-251-1/+1
|
* break loop early if we know that there are at least two signals.davidxu2006-12-251-1/+2
|
* - add ranged shootdowns when fewer than 64 mappings are being invalidatedkmacy2006-12-253-20/+47
|
* Note that rev. 1.221 introduced a local workaround for a general problem.yar2006-12-241-0/+4
| | | | | | | Add a pointer to the relevant PR for future reference. The whole comment will be OK to remove as soon as the general solution is applied. PR: kern/105943
* - remove all calls to sched_pin and sched_unpin as they are only useful tokmacy2006-12-242-133/+78
| | | | | | | | | | | | | | | | | | | | | | | | | pmap on i386 - check for change in executable status in pmap_enter - pmap_qenter and pmap_qremove only need to invalidate the range if one of the pages has been referenced - remove pmap_kenter/pmap_kremove as they were only used by pmap_qenter and pmap_qremove - in pmap_copy don't copy wired bit to destination pmap - mpte was unused in pmap_enter_object - remove - pmap_enter_quick_locked is not called on the kernel_pmap, remove check - move pmap_remove_write specific logic out of tte_clear_phys_bit - in pmap_protect check for removal of execute bit - panic in the presence of a wired page in pmap_remove_all - pmap_zero_range can call hwblkclr if offset is zero and size is PAGE_SIZE - tte_clear_virt_bit is only used by pmap_change_wiring - thus it can be greatly simplified - pmap_invalidate_page need only be called in tte_clear_phys_bit if there is a match with flags - lock the pmap in tte_clear_phys_bit so that clearing the page bits is atomic with invalidating the page - these changes result in 100s reduction in buildworld from a malloc backed disk to a malloc backed disk - ~2.5%
* Don't count on the first phys_avail range being greater than zerokmacy2006-12-241-2/+1
|
* TCP Window scaling was being recognised but the recorded settings were beingdarrenr2006-12-241-19/+7
| | | | | | clobbered and thus effectively disabled. MFC after: 7 days
* - resizing the tte_hash in pmap_copy is not likely to occurkmacy2006-12-241-5/+10
| | | | | - the implementation also made the mistake of assuming the dst_pmap is the current pmap
* Fix typo, p_slptime should be td_slptime.davidxu2006-12-241-1/+1
|
* Re-wrap comments following de-indentation.rwatson2006-12-231-13/+11
|
* Drop all received data mbufs from a socket's queue if the MT_SONAMEbms2006-12-231-11/+9
| | | | | | | | | | | | | mbuf is dropped, to preserve the invariant in the PR_ADDR case. Add a regression test to detect this condition, but do not hook it up to the build for now. PR: kern/38495 Submitted by: James Juran Reviewed by: sam, rwatson Obtained from: NetBSD MFC after: 2 weeks
* Call vnode_create_vobject() in VOP_OPEN. Makes mmap work on UDF filesystem.pav2006-12-231-0/+12
| | | | | | PR: kern/92040 Approved by: scottl MFC after: 1 week
* Fix a deadlock in detach/shutdown.alfred2006-12-232-20/+164
| | | | | | | | | | | | | | | | | | | | | | | | The problem was that I was acquiring the driver sx lock and then waiting for a taskqueue to drain, however the taskqueue itself would try to acquire the lock as well leading to a deadlock. To fix the problem roll my own exclusive lock that allows for lock cancellation. This is a normal exclusive lock, however if someone marks it as "dead" then all waiters who request an error return will get back an error instead of continuing to wait for the lock. In this particular case, the shutdown and detach functions kill the lock while the async task thread tries to acquire the lock but will abort if the lock returns an error. The other option was to drop the driver lock mid-detach and mid-shutdown, mid-detach was a ok, however mid-shutdown was not. While I'm here, fix a bug in what appears to be the mii link status word in the softc going out to lunch. Explicitly set the status word to 1 after initializing the mii. This would result in an interface that would never respond to "if_start" requests as the mii interface would always look down.
* Fix a typo in ata-queue.cremko2006-12-231-2/+2
| | | | | | PR: kern/107100 Submitted by: Stephen J. Roznowski <sjr at comcast dot net> Approved by: sos
* Fix a panic when rebooting a SMP machine, when option STOP_NMI is used,davidxu2006-12-231-0/+1
| | | | | | nmi handler is used to stop other processors, nmi hander calls trap(), however, trap() now accepts a pointer rather than a reference, this was changed by kmacy@.
* Update comments to reflect changes in the extattrctl() code.rwatson2006-12-231-12/+8
| | | | | | Clean up comment formatting. Obtained from: TrustedBSD Project
* Connect vfs_extattr.c to build by default.rwatson2006-12-231-0/+1
|
* Following a repo-copy of vfs_syscalls.c to vfs_extattr.c, removerwatson2006-12-232-5059/+7
| | | | | | | | | | | | non-extattr functions from vfs_extattr.c, and extattr functions from vfs_syscalls.c. Change copyright/license on vfs_extattr.c to my copyright/license on the extended attribute implementation (from extattr.h). Clean up includes a bit. Obtained from: TrustedBSD Project
OpenPOWER on IntegriCloud