Date: Wed, 19 Nov 2014 20:30:21 +0100 From: Michael Tuexen <tuexen@freebsd.org> To: Hans Petter Selasky <hps@selasky.org> Cc: Lawrence Stewart <lstewart@freebsd.org>, Adrian Chadd <adrian@freebsd.org>, FreeBSD Current <freebsd-current@freebsd.org>, Luigi Rizzo <rizzo@iet.unipi.it>, np@freebsd.org Subject: Re: [RFC] Removal of M_FLOWID flag from m_flags [WAS: Add support for hardware transmit rate limiting queues] Message-ID: <BC71CEFF-FD2D-4DB8-8D73-D4C05767B43A@freebsd.org> In-Reply-To: <546CE948.2070105@selasky.org> References: <546CE948.2070105@selasky.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 19 Nov 2014, at 20:02, Hans Petter Selasky <hps@selasky.org> wrote: > Hi, >=20 > The M_FLOWID flag is marked as deprecated in the FreeBSD kernel code = and the patch below completely removes it. I suggest we will now be = using the "m_pkthdr.rsstype" also known as "M_HASHTYPE" to decide if the = flowid value is valid or not. When the "rsstype" is set to = "M_HASHTYPE_NONE" the "m_pkthdr.flowid" field is not valid. Else this = field contains valid data for both TX and RX direction. >=20 > Background: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > The network drivers today use the "rsstype" field only when receiving = traffic. After my patch it is also used when sending traffic, and = probably we should rename it. >=20 > The reason for using the rsstype field for transmit, is to avoid = introducing another field in the MBUF's packet header in order to steer = outgoing traffic into special multiple purpose hardware FIFOs. This new = feature should coexist with the existing flowid mechanism, and this is = achieved by introducing a new hash type which I've named = "M_HASHTYPE_HWRING" in my patch. This type can be selected by upper = layers when generating traffic for lower layers, to indicate that the = traffic is of a special kind and should have special treatment by the = hardware, like rate-limiting. Hardware which doesn't support = M_HASHTYPE_HWRING will send out the packets like usual. >=20 >=20 > Patch is available from here: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > http://home.selasky.org:8192/m_flowid_removal.diff >=20 >=20 > Comments are appreciated! Before finally committing this, drop me a note. All the SCTP changes = need to be ported upstream. Depending on the time and if it is OK for you, I would try to integrate = this upstream and push it down to FreeBSD. Then you can commit the rest. This is simpler for me = than reintegrating your changes upstream... Best regards Michael >=20 >=20 > --HPS > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to = "freebsd-current-unsubscribe@freebsd.org" >=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BC71CEFF-FD2D-4DB8-8D73-D4C05767B43A>