svn commit: r323128 - in head/sys/dev/ntb: . ntb_hw

Alexander Motin mav at FreeBSD.org
Sat Sep 2 13:28:46 UTC 2017


Author: mav
Date: Sat Sep  2 13:28:45 2017
New Revision: 323128
URL: https://svnweb.freebsd.org/changeset/base/323128

Log:
  Increase negotiation polling period from 10ms to 100ms.
  
  There is no big need to burn CPU if other side may be not there yet.  For
  example, the PLX hardware by default enables the NTB link up on reset, not
  dependig on driver to do it.  In case of Intel hardware this also reduces
  race between MSI-X workaround negotiation and upper layers, using the same
  scratchpad registers in different time.
  
  MFC after:	12 days

Modified:
  head/sys/dev/ntb/ntb_hw/ntb_hw_intel.c
  head/sys/dev/ntb/ntb_transport.c

Modified: head/sys/dev/ntb/ntb_hw/ntb_hw_intel.c
==============================================================================
--- head/sys/dev/ntb/ntb_hw/ntb_hw_intel.c	Sat Sep  2 11:57:08 2017	(r323127)
+++ head/sys/dev/ntb/ntb_hw/ntb_hw_intel.c	Sat Sep  2 13:28:45 2017	(r323128)
@@ -2689,7 +2689,7 @@ reschedule:
 	ntb->lnk_sta = pci_read_config(ntb->device, ntb->reg->lnk_sta, 2);
 	if (_xeon_link_is_up(ntb)) {
 		callout_reset(&ntb->peer_msix_work,
-		    hz * (ntb->peer_msix_good ? 2 : 1) / 100,
+		    hz * (ntb->peer_msix_good ? 2 : 1) / 10,
 		    intel_ntb_exchange_msix, ntb);
 	} else
 		intel_ntb_spad_clear(ntb->device);

Modified: head/sys/dev/ntb/ntb_transport.c
==============================================================================
--- head/sys/dev/ntb/ntb_transport.c	Sat Sep  2 11:57:08 2017	(r323127)
+++ head/sys/dev/ntb/ntb_transport.c	Sat Sep  2 13:28:45 2017	(r323128)
@@ -250,7 +250,7 @@ enum {
 
 #define QP_TO_MW(nt, qp)	((qp) % nt->mw_count)
 #define NTB_QP_DEF_NUM_ENTRIES	100
-#define NTB_LINK_DOWN_TIMEOUT	10
+#define NTB_LINK_DOWN_TIMEOUT	100
 
 static int ntb_transport_probe(device_t dev);
 static int ntb_transport_attach(device_t dev);


More information about the svn-src-all mailing list