<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/tsec, branch releng/8.0</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>Use if_maddr_rlock()/if_maddr_runlock() rather than IF_ADDR_LOCK()/</title>
<updated>2009-06-26T11:45:06+00:00</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2009-06-26T11:45:06+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=eb956cd041f956275522092d6ba66671356ff84f'/>
<id>eb956cd041f956275522092d6ba66671356ff84f</id>
<content type='text'>
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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix Book-E/MPC85XX build. Some prototypes were wrong and got revealed with</title>
<updated>2009-06-13T08:57:04+00:00</updated>
<author>
<name>Rafal Jaworowski</name>
<email>raj@FreeBSD.org</email>
</author>
<published>2009-06-13T08:57:04+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=661ee6eea523d27a894f2f6869db2661d64bd44e'/>
<id>661ee6eea523d27a894f2f6869db2661d64bd44e</id>
<content type='text'>
the recent kobj signature checking.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
the recent kobj signature checking.
</pre>
</div>
</content>
</entry>
<entry>
<title>When user_frac in the polling subsystem is low it is going to busy the</title>
<updated>2009-05-30T15:14:44+00:00</updated>
<author>
<name>Attilio Rao</name>
<email>attilio@FreeBSD.org</email>
</author>
<published>2009-05-30T15:14:44+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=1abcdbd127e95ffe08399ec75a7001edd1ca2f5f'/>
<id>1abcdbd127e95ffe08399ec75a7001edd1ca2f5f</id>
<content type='text'>
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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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
</pre>
</div>
</content>
</entry>
<entry>
<title>tsec(4) cosmetics.</title>
<updated>2009-02-17T16:02:45+00:00</updated>
<author>
<name>Rafal Jaworowski</name>
<email>raj@FreeBSD.org</email>
</author>
<published>2009-02-17T16:02:45+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=fb20e2aeac104f5f5d9568f96093b097880a1923'/>
<id>fb20e2aeac104f5f5d9568f96093b097880a1923</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>tsec(4): Always try to resume the receiver.</title>
<updated>2009-02-17T15:59:27+00:00</updated>
<author>
<name>Rafal Jaworowski</name>
<email>raj@FreeBSD.org</email>
</author>
<published>2009-02-17T15:59:27+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=371bf7cc81a1576455b21830e12563b3c916c6cd'/>
<id>371bf7cc81a1576455b21830e12563b3c916c6cd</id>
<content type='text'>
This helps recover from RX stall under heavy loads.

Submitted by:	Piotr Ziecik kosmo ! semihalf dot com
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This helps recover from RX stall under heavy loads.

Submitted by:	Piotr Ziecik kosmo ! semihalf dot com
</pre>
</div>
</content>
</entry>
<entry>
<title>tsec(4): do not clear interrupt events register before use.</title>
<updated>2009-02-17T15:47:13+00:00</updated>
<author>
<name>Rafal Jaworowski</name>
<email>raj@FreeBSD.org</email>
</author>
<published>2009-02-17T15:47:13+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=0390701af8e50148141d5c908f0beacab3fa4a55'/>
<id>0390701af8e50148141d5c908f0beacab3fa4a55</id>
<content type='text'>
Prior to this fix, IEVENT register was always cleared before calling
tsec_error_intr_locked(), which prevented error recovery actions from
happening with polling enabled (and could lead to serious problems, including
controller hang).

Submitted by:	Marcin Ligenza marcinl ! pacomp dot com dot pl
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Prior to this fix, IEVENT register was always cleared before calling
tsec_error_intr_locked(), which prevented error recovery actions from
happening with polling enabled (and could lead to serious problems, including
controller hang).

Submitted by:	Marcin Ligenza marcinl ! pacomp dot com dot pl
</pre>
</div>
</content>
</entry>
<entry>
<title>Handle mbuf exhaustion scenario in tsec(4).</title>
<updated>2009-02-17T15:39:16+00:00</updated>
<author>
<name>Rafal Jaworowski</name>
<email>raj@FreeBSD.org</email>
</author>
<published>2009-02-17T15:39:16+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=ab160495d3a13b0d45e1efe7cfc64a10c82b1665'/>
<id>ab160495d3a13b0d45e1efe7cfc64a10c82b1665</id>
<content type='text'>
Without this fix the system would hang under heavy networking load.

Submitted by:	Leon Theunissen leon ! parsec dot co dot za
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Without this fix the system would hang under heavy networking load.

Submitted by:	Leon Theunissen leon ! parsec dot co dot za
</pre>
</div>
</content>
</entry>
<entry>
<title>tsec(4) style improvements and clean-up.</title>
<updated>2009-02-17T14:59:47+00:00</updated>
<author>
<name>Rafal Jaworowski</name>
<email>raj@FreeBSD.org</email>
</author>
<published>2009-02-17T14:59:47+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=64f90c9dff03381885a18f9201a67251f9a26f42'/>
<id>64f90c9dff03381885a18f9201a67251f9a26f42</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Additional features for the tsec(4) Ethernet driver.</title>
<updated>2009-02-17T14:57:05+00:00</updated>
<author>
<name>Rafal Jaworowski</name>
<email>raj@FreeBSD.org</email>
</author>
<published>2009-02-17T14:57:05+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=bd37530ee4ce6ad5a95a2feaed8b308e9c53ef32'/>
<id>bd37530ee4ce6ad5a95a2feaed8b308e9c53ef32</id>
<content type='text'>
  - interrupt coalescing
  - polling
  - jumbo frames
  - multicast
  - VLAN tagging

The enhanced version of the chip (eTSEC) can also take advantage of:

  - TCP/IP checksum calculation h/w offloading

Obtained from:	Freescale, Semihalf
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  - interrupt coalescing
  - polling
  - jumbo frames
  - multicast
  - VLAN tagging

The enhanced version of the chip (eTSEC) can also take advantage of:

  - TCP/IP checksum calculation h/w offloading

Obtained from:	Freescale, Semihalf
</pre>
</div>
</content>
</entry>
<entry>
<title>tsec: Refactor driver's structure.</title>
<updated>2008-08-26T10:41:49+00:00</updated>
<author>
<name>Rafal Jaworowski</name>
<email>raj@FreeBSD.org</email>
</author>
<published>2008-08-26T10:41:49+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=321e12c82e6adf74a8154721bd4b37f50a1fbaa7'/>
<id>321e12c82e6adf74a8154721bd4b37f50a1fbaa7</id>
<content type='text'>
Split the driver into the core functionality part (sys/dev/tsec/if_tsec.c) and
the bus attachment (sys/dev/tsec/if_tsec_ocp.c).

This lets better integrate and maintain the driver in other environments with
different attachment abstractions (there is at least one other FreeBSD port --
MPC83xx -- which uses this TSEC driver, but with different local bus model
i.e. some OF derivative). While there, clean up and fix minor cosmetics.

Obtained from:	Semihalf
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Split the driver into the core functionality part (sys/dev/tsec/if_tsec.c) and
the bus attachment (sys/dev/tsec/if_tsec_ocp.c).

This lets better integrate and maintain the driver in other environments with
different attachment abstractions (there is at least one other FreeBSD port --
MPC83xx -- which uses this TSEC driver, but with different local bus model
i.e. some OF derivative). While there, clean up and fix minor cosmetics.

Obtained from:	Semihalf
</pre>
</div>
</content>
</entry>
</feed>
