lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ