[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130805212257.GB6904@sbohrermbp13-local.rgmadvisors.com>
Date: Mon, 5 Aug 2013 16:22:57 -0500
From: Shawn Bohrer <sbohrer@...advisors.com>
To: Amir Vadai <amirv@...lanox.com>
Cc: eliezer.tamir@...ux.intel.com, netdev@...r.kernel.org
Subject: low latency/busy poll feedback and bugs
I did a little testing of the new low latency/busy poll sockets today
and found a few things that surprised me and at least one bug.
1) I'm testing with a Mellanox ConnectX-3 card. Currently polling
with mlx4_en is broken when GRO is enabled. In
mlx4_en_process_rx_cq() when GRO is enabled skb_mark_napi_id() is
never called. It appears like low latency sockets with GRO is
supposed to work because the following code checks that we are not
ll_polling:
/* This packet is eligible for GRO if it is:
* - DIX Ethernet (type interpretation)
* - TCP/IP (v4)
* - without IP options
* - not an IP fragment
* - no LLS polling in progress
*/
if (!mlx4_en_cq_ll_polling(cq) &&
(dev->features & NETIF_F_GRO)) {
However since we never call skb_mark_napi_id() mlx4_en_cq_ll_polling()
will never be true.
2) Why is LowLatencyRxPackets reported as a TcpExt stat? Perhaps I've
been confused and misguided but I've always assumed those are
statistics related to TCP and this feature is protocol neutral. I'm
not entirely sure where it should be moved to perhaps IpExt?
3) I don't know if this was intentional, an oversight, or simply a
missing feature but UDP multicast currently is not supported. In
order to add support I believe you would need to call
sk_mark_napi_id() in __udp4_lib_mcast_deliver(). Assuming there isn't
some intentional reason this wasn't done I'd be happy to test this and
send a patch.
--
Shawn
--
---------------------------------------------------------------
This email, along with any attachments, is confidential. If you
believe you received this message in error, please contact the
sender immediately and delete all copies of the message.
Thank you.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists