freebsd-dev/sys/dev/netmap
Hans Petter Selasky c25290420e Start process of removing the use of the deprecated "M_FLOWID" flag
from the FreeBSD network code. The flag is still kept around in the
"sys/mbuf.h" header file, but does no longer have any users. Instead
the "m_pkthdr.rsstype" field in the mbuf structure is now used to
decide the meaning of the "m_pkthdr.flowid" field. To modify the
"m_pkthdr.rsstype" field please use the existing "M_HASHTYPE_XXX"
macros as defined in the "sys/mbuf.h" header file.

This patch introduces new behaviour in the transmit direction.
Previously network drivers checked if "M_FLOWID" was set in "m_flags"
before using the "m_pkthdr.flowid" field. This check has now now been
replaced by checking if "M_HASHTYPE_GET(m)" is different from
"M_HASHTYPE_NONE". In the future more hashtypes will be added, for
example hashtypes for hardware dedicated flows.

"M_HASHTYPE_OPAQUE" indicates that the "m_pkthdr.flowid" value is
valid and has no particular type. This change removes the need for an
"if" statement in TCP transmit code checking for the presence of a
valid flowid value. The "if" statement mentioned above is now a direct
variable assignment which is then later checked by the respective
network drivers like before.

Additional notes:
- The SCTP code changes will be committed as a separate patch.
- Removal of the "M_FLOWID" flag will also be done separately.
- The FreeBSD version has been bumped.

MFC after:	1 month
Sponsored by:	Mellanox Technologies
2014-12-01 11:45:24 +00:00
..
if_em_netmap.h Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
if_igb_netmap.h Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
if_lem_netmap.h Mechanically convert to if_inc_counter(). 2014-09-19 03:51:26 +00:00
if_re_netmap.h Mechanically convert to if_inc_counter(). 2014-09-19 03:51:26 +00:00
if_vtnet_netmap.h staticize two functions, and use proper format for a struct sglist 2014-08-17 10:25:27 +00:00
ixgbe_netmap.h Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
netmap_freebsd.c Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
netmap_generic.c sync a comment with our internal repo 2014-11-10 20:19:58 +00:00
netmap_kern.h add support for private knote lock (reduces lock contention), 2014-11-13 00:40:34 +00:00
netmap_mbq.c introduce mbq_lock() and mbq_unlock() for the mbq, 2014-06-06 18:02:32 +00:00
netmap_mbq.h Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
netmap_mem2.c Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
netmap_mem2.h Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
netmap_monitor.c we need full barriers here 2014-11-13 00:14:25 +00:00
netmap_offloadings.c Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
netmap_pipe.c we need full barriers here 2014-11-13 00:14:25 +00:00
netmap_vale.c Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
netmap.c add support for private knote lock (reduces lock contention), 2014-11-13 00:40:34 +00:00