summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Turn sgtty into a binary-only compatibility interface.ed2008-06-145-151/+8
| | | | | | | | | | | | | | | | sgtty was the original interface to configure terminal attributes on my UNIX-like operating systems. It has been deprecated by the POSIX termios interface, which is implemented in almost any modern system. An advantage of turning this into a binary compatibility interface, is that we can now eventually remove the COMPAT_43TTY switch from kernel configurations. This removes many ioctl()'s from the TTY layer. While there, increase the __FreeBSD_version, which may be useful for the people working on the Ports tree. Reviewed by: kib Approved by: philip (mentor)
* - Macro-izes the packed declaration in all headers.rrs2008-06-1423-1197/+1352
| | | | | | | | | | | | | | | | | | - Vimage prep - these are major restructures to move all global variables to be accessed via a macro or two. The variables all go into a single structure. - Asconf address addition tweaks (add_or_del Interfaces) - Fix rwnd calcualtion to be more conservative. - Support SACK_IMMEDIATE flag to skip delayed sack by demand of peer. - Comment updates in the sack mapping calculations - Invarients panic added. - Pre-support for UDP tunneling (we can do this on MAC but will need added support from UDP to get a "pipe" of UDP packets in. - clear trace buffer sysctl added when local tracing on. Note the majority of this huge patch is all the vimage prep stuff :-)
* The TrustedBSD MAC Framework named struct ipq instances 'ipq', which is therwatson2008-06-138-74/+73
| | | | | | | | | | | same as the global variable defined in ip_input.c. Instead, adopt the name 'q' as found in about 1/2 of uses in ip_input.c, preventing a collision on the name. This is non-harmful, but means that search and replace on the global works less well (as in the virtualization work), as well as indexing tools. MFC after: 1 week Reported by: julian
* Tweak the promotion test in pmap_promote_pde(). Specifically, test PG_Aalc2008-06-131-5/+4
| | | | | | before PG_M. This sometimes prevents unnecessary removal of write access from a PTE. Overall, the net result is fewer demotions and promotion failures.
* Make ex(4) MPSAFE:jhb2008-06-134-90/+101
| | | | | | | | | | - Add a mutex to the softc to protect the softc and device hardware. - Use a private watchdog timer. - Setup interrupt handler after ether_ifattach(). - Use bus_foo() rather than bus_space_foo() and remove bus space tag and handle from softc. Tested by: imp
* Add the D-Link DWA-111kevlo2008-06-132-0/+2
|
* - Added support for BCM5709 and BCM5716.davidch2008-06-131-9/+59
| | | | MFC after: 2 weeks
* - Added support for BCM5709 and BCM5716 controllers.davidch2008-06-133-6019/+16022
| | | | MFC after: 2 weeks
* Use callout_init_mtx to simplify locking somewhat. While we're here, rearrangebenno2008-06-132-35/+18
| | | | | | some operations in smc_detach to remove the need for the smc_shutdown variable. Suggested by: jhb
* Fix vm object creation locking to allow SHARED vnode locking for ↵ups2008-06-121-6/+7
| | | | | | | | vnode_create_vobject. (Not currently used) Noticed by: kib@
* Finish the support for partition labels and add it to the XML.marcel2008-06-121-10/+86
|
* Remove the $FreeBSD$ tag again, now I know fbsd:nokeywords exists.ed2008-06-121-2/+0
| | | | | Requested by: pjd Approved by: philip (mentor)
* Turn dev2unit(), minor(), unit2minor() and minor2unit() into macro's.ed2008-06-124-46/+8
| | | | | | | | | | | | | Now that we got rid of the minor-to-unit conversion and the constraints on device minor numbers, we can convert the functions that operate on minor and unit numbers to simple macro's. The unit2minor() and minor2unit() macro's are now no-ops. The ZFS code als defined a macro named `minor'. Change the ZFS code to use umajor() and uminor() here, as it is the correct approach to do this. Also add $FreeBSD$ to keep SVN happy. Approved by: philip (mentor), pjd
* Add the raw partition type to the XML.marcel2008-06-121-6/+12
|
* Add the raw partition type to the XML.marcel2008-06-121-4/+11
|
* Add the raw partition type to the XML.marcel2008-06-121-4/+10
|
* Add the raw partiton type to the XML.marcel2008-06-121-6/+14
|
* Add the raw partition type to the XML.marcel2008-06-121-4/+10
|
* Reverse the direction of pmap_promote_pde()'s traversal over the specifiedalc2008-06-121-11/+27
| | | | | | | | | | | page table page. The direction of the traversal can matter if pmap_promote_pde() has to remove write access (PG_RW) from a PTE that hasn't been modified (PG_M). In general, if there are two or more such PTEs to choose among, it is better to write protect the one nearer the high end of the page table page rather than the low end. This is because most programs access memory in an ascending direction. The net result of this change is a sometimes significant reduction in the number of failed promotion attempts and the number of pages that are write protected by pmap_promote_pde().
* Add the partition label and the raw partition type to the XML.marcel2008-06-121-5/+19
|
* Define APM_ENT_NAMELEN and APM_ENT_TYPELEN for general use.marcel2008-06-121-2/+5
|
* Return an error code rather than ENXIO when both rman_init() andkevlo2008-06-123-28/+33
| | | | | | rman_manage_region() failed. Reviewed by: marcel
* Fix a typo: i80321_pci_probe -> i81342_pci_probekevlo2008-06-121-1/+1
|
* Make sure we drain our taskqueues and stop our callouts in detach.benno2008-06-122-7/+37
|
* Change include to reflect tcp_lro.h move.jfv2008-06-111-1/+1
|
* Remove the tcp_lro.[ch] files as they are now in netinet.jfv2008-06-112-465/+0
|
* Remove compile of tcp_lro since its now in netinetjfv2008-06-111-1/+1
|
* Add generic TCP LOR into netinetjfv2008-06-112-0/+464
|
* Add LRO into kernel buildjfv2008-06-111-0/+1
|
* Duh, wrong directory, needed to be in netinetjfv2008-06-112-464/+0
|
* Add generic TCP LRO code, moved from the ixgbe driver into netjfv2008-06-112-0/+464
|
* Fix a typo in a comment.wkoszek2008-06-111-1/+1
|
* Don't enforce unique device minor number policy anymore.ed2008-06-1111-15/+22
| | | | | | | | | | | | | | | | | | | | | | | Except for the case where we use the cloner library (clone_create() and friends), there is no reason to enforce a unique device minor number policy. There are various drivers in the source tree that allocate unr pools and such to provide minor numbers, without using them themselves. Because we still need to support unique device minor numbers for the cloner library, introduce a new flag called D_NEEDMINOR. All cdevsw's that are used in combination with the cloner library should be marked with this flag to make the cloning work. This means drivers can now freely use si_drv0 to store their own flags and state, making it effectively the same as si_drv1 and si_drv2. We still keep the minor() and dev2unit() routines around to make drivers happy. The NTFS code also used the minor number in its hash table. We should not do this anymore. If the si_drv0 field would be changed, it would no longer end up in the same list. Approved by: philip (mentor)
* Convert ndis_spinlock to ndis_mtx and start using the sleepablecokane2008-06-112-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mtx interface for NDIS_LOCK/UNLOCK. This should result in less CPU utilization on behalf of the ndis driver. Additionally, this commit also fixes a potential LOR in the ndis_tick code, by not locking inside the ndis_tick function, but instead delegating that work to the helpers called through IoQueueWorkItem. The way that this is currently set up for NDIS prevents us from simply implementing a callout_init_mtx mechanism. However, the helper functions that handle the various timeout cases implement fine-grained locking using the spinlocks provided by the NDIS-compat layer, and using the mtx that is added with this commit. This leaves the following ndis_softc members operated on in ndis_tick in an unlocked context: * ndis_hang_timer - Only modified outside of ndis_tick once, before the first callout_reset to schedule ndis_tick * ifp->if_oerrors - Only incremented in two places, which should be an atomic op * ndis_tx_timer - Assigned to 5 (when guaranteed to be 0) or 0 (in txeof), to indicate to ndis_tick what to do. This is the only member of which I was suspicious for needing the NDIS_LOCK here. My testing (and another's) have been fine so far. * ndis_stat_callout - Only uses a simple set of callout routines, callout_reset only called by ndis_tick after the initial reset, and then callout_drain is used exactly once in shutdown code. The benefit is that ndis_tick doesn't acquire NDIS_LOCK unless one of the timeout conditions is flagged, and it still obeys the locking order semantics that are dictated by the NDIS layer at the moment. I have been investigating a more thorough s/spinlock/mtx/ of the NDIS layer, but the simplest naive approach (replace KeAcquireSpinLock with an mtx implementation) has anti-succeeded for me so far. This is a good first step though. Tested by: onemda@gmail.com Reviewed by: current@, jhb, thompsa Proposed by: jhb
* In cd9660_readdir vop, always initialize the idp->uio_off member.kib2008-06-111-0/+1
| | | | | | | | | | The while loop that is assumed to initialize the uio_off later, may be not entered at all, causing uninitialized value to be returned in uio->uio_offset. PR: 122925 Submitted by: Jaakko Heinonen <jh saunalahti fi> MFC after: 1 weeks
* Wait up to 1S for the TFD data to signal un-busy before fetching the signature.sos2008-06-111-3/+3
| | | | | | This at least helps a few slow devices out there. Submitted by: Andrey V. Elsukov
* fix a page fault that it occurred during ifp is NULL. This bug happensweongyo2008-06-111-2/+2
| | | | | when NDIS driver's initialization is failed and NDIS driver's trying to call NdisWriteErrorLogEntry().
* Switch to using a normal mutex instead of a spin mutex.benno2008-06-112-22/+30
| | | | | | | | | | | We still use the interrupt filter due to performance problems that show up if we don't. The main problem seen is that, due to the interrupt being edge triggered, we occasionally miss interrupts which leads us to not notice that we can transmit more packets. Using the new approach, which just schedules a task on a taskqueue, we are guaranteed to have the task run even if the interrupt arrived while we were already executing. If we were to use an ithread the system would mask the interrupt while the handler is run and we'd miss interrupts.
* Convert bus_space_{read,write}_* calls to bus_{read,write}_* calls.benno2008-06-112-30/+18
| | | | Suggested by: jhb
* Rearrange how to call dma.alloc() so that we have resources alloc'd when ↵sos2008-06-112-6/+5
| | | | need but also late enough to know how many to create.
* Keep proper track of nsegs counter: sem_free is called for allgonzo2008-06-101-4/+3
| | | | | | | | | allocated semaphores, so it's wrong to increase it conditionally, in this case for every over-the-limit semaphore nsegs is decreased without being previously increased. PR: kern/123685 Approved by: cognet (mentor)
* When the file-system containing the audit log file is running low onsimon2008-06-101-1/+3
| | | | | | | disk space a warning is printed. Make this warning a bit more informative. Approved by: rwatson
* Add Belkin F5U257 to the mix.imp2008-06-101-0/+2
| | | | Submitted by: wilko@
* Make tx(4) MPSAFEjhb2008-06-102-117/+134
| | | | | | | | | | | - Add a mutex to the softc to protect the softc and device hardware. - Use a private timer to implement a watchdog for tx timeouts and drive the timer for auto negotiation. - Use bus_foo() rather than bus_space_foo() and remove the bus space tag & handle from the softc. - Call bus_setup_intr() after ether_ifattach(). Tested by: Florian Smeets flo of kasimir.com
* Add support for the P212, P410, P410i, P411, and P812 HP Smart Arrayps2008-06-101-0/+5
| | | | | | controllers. Submitted by: Scott Benesh at HP
* Add the pxa_teardown_intr() bus method function to de-associate thekevlo2008-06-101-10/+17
| | | | interrupt handler
* Pull all the code to deal with bus space methods into a shared set ofkevlo2008-06-102-102/+7
| | | | routines.
* >From NetBSD:kevlo2008-06-102-46/+0
| | | | | | | | Remove the code which disables port status change interrupts for 1s when one occured -- this makes that events get lost or delayed until the next change. Obtained from: NetBSD
* - Fixed kern/123696 by increasing firmware timeout value from 100 to 1000.davidch2008-06-102-54/+193
| | | | | | | | | | - Fixed a problem on i386 architecture when using split header/jumbo frame firmware caused by hardware alignment requirements. - Added #define BCE_USE_SPLIT_HEADER to allow the feature to be enabled/ disabled. Enabled by default. PR: kern/123696 MFC after: 2 weeks
* Since we create a DMA tag "mtag" for TX map with bus_dmamap_create(),wkoszek2008-06-091-2/+2
| | | | | | | | | we must synchronize such a map against "mtag" with bus_dmamap_sync(), not the tag designated for RX map. Fix it. Approved by: cognet
OpenPOWER on IntegriCloud