History log of /freebsd-10-stable/sys/sys/mbuf.h
Revision Date Author Comments
# 282786 11-May-2015 hiren

Fix r282781:

We should return OPAQUE from M_HASHTYPE_GET() if M_FLOWID is there and rsstype
is not set.

Submitted by: hans


# 282781 11-May-2015 hiren

r281955 removed M_FLOWID which could cause problems for old drivers still using
the field. It cannot be removed from stable/10 so restore it.

Change M_HASHTYPE_GET() and M_HASHTYPE_SET() to do the right thing when M_FLOWID
exists.

Also bumping the FreeBSD version to note the fact that M_FLOWID is brought back
in stable/10.
(Just a note that M_FLOWID has been removed from -head.)

Spotted by: np
Suggested by: hans
Reviewed by: hans, tuexen (earlier version)
Helped by: jhb, delphij, gjb
Sponsored by: Limelight Networks


# 281955 24-Apr-2015 hiren

MFC r275358 r275483 r276982 - Removing M_FLOWID by hps@

r275358:
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.

r275483:
Remove M_FLOWID from SCTP code.

r276982:
Remove no longer used "M_FLOWID" flag from mbuf.h and update the netisr
manpage.

Note: The FreeBSD version has been bumped.

Reviewed by: hps, tuexen
Sponsored by: Limelight Networks


# 281951 24-Apr-2015 ngie

Backport MHSIZE/MPKTHSIZE equivalents from head

These macros are equivalent to the ones on head, except they are only exposed
when _KERNEL is defined, i.e. to kernel code, whereas the code on head is exposed
to userland as well

This is for improved forwards compatibility with mbuf(9) macros in head@r277203+,
and is required for a clean MFC of r279393

This is a direct commit to stable/10

MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D2126
Reviewed by: glebius, rwatson
Sponsored by: EMC / Isilon Storage Division


# 281603 16-Apr-2015 jhb

MFC 280222:
Clear an mbuf's external storage flags in m_extaddref(). They are cleared
in other places that set the external storage type (ext_type) such as
m_cljset(), m_extadd(), mb_ctor_clust(), and vn_sendfile().


# 273450 22-Oct-2014 bryanv

MFC r272796:

Add M_FLOWID to M_COPYFLAGS

The M_FLOWID flag should be propagated to the new mbuf pkthdr in
m_move_pkthdr() and m_dup_pkthdr(). The new mbuf already got the
existing flowid value, but would be ignored since the flag was
not set.


# 269047 24-Jul-2014 kevlo

MFC r268825:

Remove deprecated definition "m_act".

Suggested by: adrian, glebius


# 265416 06-May-2014 np

MFC r261804:
Provide additional information in some panic strings.


# 282786 11-May-2015 hiren

Fix r282781:

We should return OPAQUE from M_HASHTYPE_GET() if M_FLOWID is there and rsstype
is not set.

Submitted by: hans


# 282781 11-May-2015 hiren

r281955 removed M_FLOWID which could cause problems for old drivers still using
the field. It cannot be removed from stable/10 so restore it.

Change M_HASHTYPE_GET() and M_HASHTYPE_SET() to do the right thing when M_FLOWID
exists.

Also bumping the FreeBSD version to note the fact that M_FLOWID is brought back
in stable/10.
(Just a note that M_FLOWID has been removed from -head.)

Spotted by: np
Suggested by: hans
Reviewed by: hans, tuexen (earlier version)
Helped by: jhb, delphij, gjb
Sponsored by: Limelight Networks


# 281955 24-Apr-2015 hiren

MFC r275358 r275483 r276982 - Removing M_FLOWID by hps@

r275358:
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.

r275483:
Remove M_FLOWID from SCTP code.

r276982:
Remove no longer used "M_FLOWID" flag from mbuf.h and update the netisr
manpage.

Note: The FreeBSD version has been bumped.

Reviewed by: hps, tuexen
Sponsored by: Limelight Networks


# 281951 24-Apr-2015 ngie

Backport MHSIZE/MPKTHSIZE equivalents from head

These macros are equivalent to the ones on head, except they are only exposed
when _KERNEL is defined, i.e. to kernel code, whereas the code on head is exposed
to userland as well

This is for improved forwards compatibility with mbuf(9) macros in head@r277203+,
and is required for a clean MFC of r279393

This is a direct commit to stable/10

MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D2126
Reviewed by: glebius, rwatson
Sponsored by: EMC / Isilon Storage Division


# 281603 16-Apr-2015 jhb

MFC 280222:
Clear an mbuf's external storage flags in m_extaddref(). They are cleared
in other places that set the external storage type (ext_type) such as
m_cljset(), m_extadd(), mb_ctor_clust(), and vn_sendfile().


# 273450 22-Oct-2014 bryanv

MFC r272796:

Add M_FLOWID to M_COPYFLAGS

The M_FLOWID flag should be propagated to the new mbuf pkthdr in
m_move_pkthdr() and m_dup_pkthdr(). The new mbuf already got the
existing flowid value, but would be ignored since the flag was
not set.


# 269047 24-Jul-2014 kevlo

MFC r268825:

Remove deprecated definition "m_act".

Suggested by: adrian, glebius


# 265416 06-May-2014 np

MFC r261804:
Provide additional information in some panic strings.