summaryrefslogtreecommitdiffstats
path: root/sys/dev/e1000
Commit message (Collapse)AuthorAgeFilesLines
* Fix drbr and altq interaction:mlaier2010-02-132-3/+7
| | | | | | | | | | | | | | | - introduce drbr_needs_enqueue that returns whether the interface/br needs an enqueue operation: returns true if altq is enabled or there are already packets in the ring (as we need to maintain packet order) - update all drbr consumers - fix drbr_flush - avoid using the driver queue (IFQ_DRV_*) in the altq case as the multiqueue consumer does not provide enough protection, serialize altq interaction with the main queue lock - make drbr_dequeue_cond work with altq Discussed with: kmacy, yongari, jfv MFC after: 4 weeks
* A few minor changes: add altq option header, add missing conditionaljfv2010-02-012-3/+116
| | | | | around a buf_ring call that will break 7.3, and thanks to Fabien Thomas add POLLING support for igb and a minor related fix in the em driver.
* Fix for kern/141646: when stacking pseudo drivers likejfv2010-01-301-14/+30
| | | | | | | | | | lagg and vlan the vlan attach/detach event is not being handed down to em, this caused some init code not to run, and thus VLANs did not work. Ultimately having the event get propagated would be nice, but for now the solution is to have HWFILTER off by default, when this is the case VLANs will work, ifconfig can be used to turn it on and then get HW tag filtering.
* Add a link tasklet so updates can be sleepable.jfv2010-01-272-7/+24
|
* Two more build problems, missing includes and semicolon.jfv2010-01-272-1/+3
|
* Opps, completely wrong version of if_em.h got intojfv2010-01-271-122/+98
| | | | the checkin, sorry all :(
* Missing a fix for the new watchdog handling.jfv2010-01-262-0/+2
|
* Remove some internal conditional defines that willjfv2010-01-261-13/+0
| | | | fail in kernel tree.
* Update the 1G drivers, shared code sync with Intel,jfv2010-01-2626-1706/+1368
| | | | | | | | | | igb now has a queue notion that has a single interrupt with an RX/TX pair, this will reduce the total interrupts seen on a system. Both em and igb have a new watchdog method. igb has fixes from Pyun Yong-Hyeon that have improved stability, thank you :) I wish to MFC this for 7.3 asap, please test if able.
* Remove extraneous semicolons, no functional changes.mbr2010-01-071-1/+1
| | | | | Submitted by: Marc Balmer <marc@msys.ch> MFC after: 1 week
* - Add missing newlines to some error messages.jhb2009-12-181-3/+6
| | | | | | - Add interrupt descriptions when using mulitple MSI-X interrupts. Reviewed by: jfv
* Add old read_mac_addr routine to this module sincejfv2009-12-141-0/+42
| | | | a customer report of an Invalid MAC Address has occurred.
* Remove the MTX_SPIN flag to the shared code MUTEXjfv2009-12-141-2/+1
| | | | | as it was causing a panic, also took the opportunity to rename the lock for clarity.
* Remove phantom line of code that somehow slippedjfv2009-12-081-1/+0
| | | | into the checkin.
* Resync with Intel versions of both the em and igbjfv2009-12-0822-1798/+3148
| | | | | | | | | | | drivers. These add new hardware support, most importantly the pch (i5 chipset) in the em driver. Also, both drivers now have the simplified (and I hope improved) watchdog code. The igb driver uses the new RX cleanup that I first implemented in ixgbe. em - version 6.9.24 igb - version 1.8.4
* With an i386 kernel the igb driver can cause ajfv2009-11-111-3/+3
| | | | | | | | page fault panic on initialization due to a large number of bounce pages being allocated. This is due to the dma tag requiring page alignment on mbuf mapping. This was removed some time back from the ixgbe driver and is not needed here either.
* Fix build issue with last commit.jfv2009-09-101-2/+2
|
* Fix build complaint from previous checkinjfv2009-09-101-2/+2
|
* Fix an xmit mbuf leak, when transmit failed but youjfv2009-09-101-6/+14
| | | | | | still have an mbuf it was not being requeued. MFC: 3 days
* Fix for pr 138516jfv2009-09-101-5/+10
| | | | | | An mbuf is not requeued when a xmit fails. MFC: 3 days
* Revert previous commit and add myself to the list of people who shouldphk2009-09-081-1/+1
| | | | know better than to commit with a cat in the area.
* Add necessary include.phk2009-09-081-1/+1
|
* Temporarily enhance em(4) and igb(4) hack to take account for IFF_NOARP.delphij2009-08-192-2/+4
| | | | | | | | | | | | Without this changeset there will be no way to prevent these NICs from sending ARP, which is harmful in server farms that is configured as "Direct Server Return" behind a load balancer. A better fix would remove the whole hack completely but it would be later than 8.0-RELEASE. Reviewed by: jfv, yongari Approved by: re (kib)
* Improvement on the last change, this gives a precisejfv2009-07-242-12/+12
| | | | | | | way to tell the one and only interface that a vlan event is for. Thanks to John Baldwin for the patch. Approved by: re
* This delta fixes two bugs:jfv2009-07-242-6/+17
| | | | | | | | | | | - When a vlan event occurs a check was not made that the event was actually for the interface, thus resulting in a panic. All three drivers have this vulnerability. Add a check for this condition. - Secondly, there was a duplicate buf_ring free in the em driver resulting in a panic on unload. Remove. Approved by: re
* A small number of systems in the ICH9/10 family have a flashjfv2009-07-241-22/+2
| | | | | | | | | part that is made up of 8K banks rather than 4K, if these systems are using bank 1 then the last change in this code breaks the bank read, resulting in an invalid checksum of the eeprom during driver load. This change fixes this. Approved by: re
* Re-add opt_inet.h, as we did in r193862 and lost yet again.bz2009-07-141-0/+1
| | | | Approved by: re (kib)
* The new method of reading the mac address from thejfv2009-07-061-1/+36
| | | | | | | RAR(0) register does not work on this old adapter, provide a local routine that does it the older way. Approved by: re
* Type problem when FreeBSD is in a virtualized environment, thejfv2009-06-291-1/+1
| | | | | | | | result was when the RX index wrapped it was converted into some sort of gibberish and written into the RDT register, effectively killing the RX side of the thing :) Approved by: re
* Use if_maddr_rlock()/if_maddr_runlock() rather than IF_ADDR_LOCK()/rwatson2009-06-262-4/+4
| | | | | | | | | | | | | IF_ADDR_UNLOCK() across network device drivers when accessing the per-interface multicast address list, if_multiaddrs. This will allow us to change the locking strategy without affecting our driver programming interface or binary interface. For two wireless drivers, remove unnecessary locking, since they don't actually access the multicast address list. Approved by: re (kib) MFC after: 6 weeks
* Change intr_bind to bus_bind_intr, also limit this tojfv2009-06-251-6/+4
| | | | | multiqueue setup which is not the shipping default for igb (its set to 1).
* need to make intr_bind call architecture specific forjfv2009-06-241-2/+2
| | | | global builds (failing sun4v lint build)
* Fix lint issue.jfv2009-06-241-2/+2
|
* Updates for both the em and igb drivers, add supportjfv2009-06-2419-1505/+2742
| | | | | for multiqueue tx, shared code updates, new device support, and some bug fixes.
* Add opt_inet.h back lost with r190872.bz2009-06-091-0/+1
| | | | | This will bring back improved IPv4 SIOCSIFADDR ioctl handling not re-initializing the interface if avoidable.
* When user_frac in the polling subsystem is low it is going to busy theattilio2009-05-301-11/+22
| | | | | | | | | | | | | | | | | | | | | CPU for too long period than necessary. Additively, interfaces are kept polled (in the tick) even if no more packets are available. In order to avoid such situations a new generic mechanism can be implemented in proactive way, keeping track of the time spent on any packet and fragmenting the time for any tick, stopping the processing as soon as possible. In order to implement such mechanism, the polling handler needs to change, returning the number of packets processed. While the intended logic is not part of this patch, the polling KPI is broken by this commit, adding an int return value and the new flag IFCAP_POLLING_NOCOUNT (which will signal that the return value is meaningless for the installed handler and checking should be skipped). Bump __FreeBSD_version in order to signal such situation. Reviewed by: emaste Sponsored by: Sandvine Incorporated
* Call drbr_stats_update to update ifp stats directly when we bypass the ↵kmacy2009-05-141-3/+6
| | | | buf_ring on transmit
* fix typo in conditionalkmacy2009-04-271-1/+1
|
* collapse the two em_start_locked routines in to onekmacy2009-04-272-48/+24
|
* Correct fat finger mistakejfv2009-04-271-1/+1
|
* igb_txeof also has a case where the watchdog may notjfv2009-04-271-9/+8
| | | | | | get reset when it should be MFC after: 2 weeks
* Thanks for Michael Tuexen for tracking down a path wherejfv2009-04-271-14/+21
| | | | | | | the watchdog timer was not being rearmed in txeof, and also a missing case in the new code. MFC after: 2 weeks
* fix typokmacy2009-04-231-1/+1
|
* fix panic when using msixkmacy2009-04-231-0/+5
| | | | Pointed out by Nate Whitehorn
* Make sure the ALTQ case is handle correctly by using drbr_dequeuekmacy2009-04-231-1/+1
|
* call base if_qflush routine to flush if_sndkmacy2009-04-161-0/+1
|
* Thanks to Michael Tuexen and Randall Scott for providing ajfv2009-04-141-8/+8
| | | | | | | few important bug fixes found while they were doing SCTP development, and that I somehow lost during the scramble. Thanks guys!!
* - define em_transmit and em_qflushkmacy2009-04-142-13/+138
| | | | | | - make buF_ring usage conditional but enabled by default Reviewed by: jfv
* Fix build problem with data format.jfv2009-04-101-2/+2
|
* This delta syncs the em and igb drivers with Intel,jfv2009-04-1022-1042/+1722
| | | | | | | adds header split and SCTP support into the igb driver. Various small improvements and fixes. MFC after: 2 weeks
OpenPOWER on IntegriCloud