]> git.openfabrics.org - ~shefty/rdma-win.git/commitdiff
squash
authorSean Hefty <sean.hefty@intel.com>
Tue, 27 Jul 2010 07:09:03 +0000 (00:09 -0700)
committerSean Hefty <sean.hefty@intel.com>
Tue, 27 Jul 2010 07:09:03 +0000 (00:09 -0700)
meta
patches/nd2 [deleted file]
patches/nd2-provide-update-provider-ap [new file with mode: 0644]
patches/srq [deleted file]

diff --git a/meta b/meta
index f31ec1115dd6ea4749c5e06b5c2a483f931c1ae1..70a64c9ef30ac980c4a9f35b047de5a2cd33f7bb 100644 (file)
--- a/meta
+++ b/meta
@@ -1,8 +1,8 @@
 Version: 1
-Previous: c0a3c68507ac817769db9678b9a82d20a575f3c3
-Head: 7fae076cc5f6b3d4e5dfbbe9600f6616acea260a
+Previous: a14609f3cbfcc83c69e84926fabd424fb5f449c3
+Head: 209fe858d9870d9ed31e785bb6423e688294a2c8
 Applied:
-  nd2: 7fae076cc5f6b3d4e5dfbbe9600f6616acea260a
+  nd2-provide-update-provider-ap: 209fe858d9870d9ed31e785bb6423e688294a2c8
 Unapplied:
   nd-heap: 4073d4bd9835679d69e79783b4fd841e173ec458
   wv-reg: 2c86a99e122511e0ef8723c8ec08456f4002a39a
@@ -10,7 +10,6 @@ Unapplied:
   nd-adapt-query: 4b10643cd3ba9593cb4dcfd787bf8b1285dbbb2b
   sge: f00370179e2dcdfb8aaf58da81785439872a8557
   mr: 08fda6a1a2612a27925c8afaf1af286a65469af5
-  srq: 967671cec63bf66a517bec9e5ac49a21c8279e20
   srq-32: 39a3c8243009a85178c8ade30dba40951505c976
   listen: 2be03271e485814fa964867af100c67d5bad37b8
   connect: 7945145cdb880952fcab35d524bddaddc3ef9d1b
diff --git a/patches/nd2 b/patches/nd2
deleted file mode 100644 (file)
index b719b1c..0000000
+++ /dev/null
@@ -1,385 +0,0 @@
-Bottom: 06cdce656914daffeb60188020c0cbccef3f6806
-Top:    7a08ebdd6b23d5fe2e5792f4bd0cc673b626d5af
-Author: Sean Hefty <sean.hefty@intel.com>
-Date:   2010-07-27 00:06:02 -0700
-
-nd2/provide: update provider APIs to match latest spec
-
-Signed-off-by: Sean Hefty <sean.hefty@intel.com>
-
----
-
-diff --git a/trunk/ulp/netdirect2/user/nd_adapter.cpp b/trunk/ulp/netdirect2/user/nd_adapter.cpp
-index 475c1e6..aa4cb92 100644
---- a/trunk/ulp/netdirect2/user/nd_adapter.cpp
-+++ b/trunk/ulp/netdirect2/user/nd_adapter.cpp
-@@ -167,80 +167,112 @@ QueryAddressList(SOCKET_ADDRESS_LIST* pAddressList, SIZE_T* pcbAddressList)
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateCompletionQueue(DWORD queueDepth, GROUP_AFFINITY* pAffinity,\r
--                                        INDCompletionQueue** ppCompletionQueue)\r
-+CreateCompletionQueue(REFIID iid, DWORD queueDepth, USHORT group, KAFFINITY affinity,\r
-+                                        VOID** ppCompletionQueue)\r
- {\r
-       return CNDCompletionQueue::CreateInstance(this, queueDepth, ppCompletionQueue);\r
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateMemoryRegion(INDMemoryRegion** ppMemoryRegion)\r
-+CreateMemoryRegion(REFIID iid, VOID** ppMemoryRegion)\r
- {\r
-+      if (iid != IID_INDMemoryRegion) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-       return CNDMemoryRegion::CreateInstance(this, ppMemoryRegion);\r
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateMemoryWindow(INDMemoryWindow** ppMemoryWindow)\r
-+CreateMemoryWindow(REFIID iid, VOID** ppMemoryWindow)\r
- {\r
-+      if (iid != IID_INDMemoryWindow) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-       return CNDMemoryWindow::CreateInstance(this, ppMemoryWindow);\r
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateSharedReceiveQueue(DWORD queueDepth, DWORD maxSGE,\r
--                                               DWORD notifyThreshold, GROUP_AFFINITY* pAffinity,\r
--                                               INDSharedReceiveQueue** ppSharedReceiveQueue)\r
-+CreateSharedReceiveQueue(REFIID iid, DWORD queueDepth, DWORD maxSge,\r
-+                                               DWORD notifyThreshold, USHORT group,\r
-+                                               KAFFINITY affinity, VOID** ppSharedReceiveQueue)\r
- {\r
--      return CNDSharedReceiveQueue::CreateInstance(this, queueDepth, maxSGE,\r
--                                                                                               notifyThreshold, pAffinity,\r
-+      if (iid != IID_INDSharedReceiveQueue) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-+      return CNDSharedReceiveQueue::CreateInstance(this, queueDepth, maxSge,\r
-+                                                                                               notifyThreshold, affinity,\r
-                                                                                                ppSharedReceiveQueue);\r
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateQueuePair(INDCompletionQueue* pReceiveCompletionQueue,\r
--                              INDCompletionQueue* pInitiatorCompletionQueue, VOID* context,\r
-+CreateQueuePair(REFIID iid, IUnknown* pReceiveCompletionQueue,\r
-+                              IUnknown* pInitiatorCompletionQueue, VOID* context,\r
-                               DWORD receiveQueueDepth, DWORD initiatorQueueDepth,\r
--                              DWORD maxReceiveRequestSGE, DWORD maxInitiatorRequestSGE,\r
--                              INDQueuePair** ppQueuePair)\r
-+                              DWORD maxReceiveRequestSge, DWORD maxInitiatorRequestSge,\r
-+                              VOID** ppQueuePair)\r
- {\r
-       CNDCompletionQueue *rcq = (CNDCompletionQueue *) pReceiveCompletionQueue;\r
-       CNDCompletionQueue *icq = (CNDCompletionQueue *) pInitiatorCompletionQueue;\r
\r
-+      if (iid != IID_INDQueuePair) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-       return CNDQueuePair::CreateInstance(this, rcq, icq, NULL,\r
-                                                                               context, receiveQueueDepth, initiatorQueueDepth,\r
--                                                                              maxReceiveRequestSGE, maxInitiatorRequestSGE,\r
-+                                                                              maxReceiveRequestSge, maxInitiatorRequestSge,\r
-                                                                               ppQueuePair);\r
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateQueuePairWithSRQ(INDCompletionQueue* pReceiveCompletionQueue,\r
--                                         INDCompletionQueue* pInitiatorCompletionQueue,\r
--                                         INDSharedReceiveQueue* pSharedReceiveQueue, VOID* context,\r
--                                         DWORD initiatorQueueDepth, DWORD maxInitiatorRequestSGE,\r
--                                         INDQueuePair** ppQueuePair)\r
-+CreateQueuePairWithSrq(REFIID iid, IUnknown* pReceiveCompletionQueue,\r
-+                                         IUnknown* pInitiatorCompletionQueue,\r
-+                                         IUnknown* pSharedReceiveQueue, VOID* context,\r
-+                                         DWORD initiatorQueueDepth, DWORD maxInitiatorRequestSge,\r
-+                                         VOID** ppQueuePair)\r
- {\r
-       CNDCompletionQueue *rcq = (CNDCompletionQueue *) pReceiveCompletionQueue;\r
-       CNDCompletionQueue *icq = (CNDCompletionQueue *) pInitiatorCompletionQueue;\r
-       CNDSharedReceiveQueue *srq = (CNDSharedReceiveQueue *) pSharedReceiveQueue;\r
\r
-+      if (iid != IID_INDQueuePair) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-       return CNDQueuePair::CreateInstance(this, rcq, icq, srq,\r
-                                                                               context, 0, initiatorQueueDepth, 0,\r
--                                                                              maxInitiatorRequestSGE, ppQueuePair);\r
-+                                                                              maxInitiatorRequestSge, ppQueuePair);\r
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateSharedEndpoint(INDSharedEndpoint** ppSharedEndpoint)\r
-+CreateSharedEndpoint(REFIID iid, VOID** ppSharedEndpoint)\r
- {\r
-+      if (iid != IID_INDSharedEndpoint) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-       return CNDSharedEndpoint::CreateInstance(this, ppSharedEndpoint);\r
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateConnector(INDConnector** ppConnector)\r
-+CreateConnector(REFIID iid, VOID** ppConnector)\r
- {\r
-+      if (iid != IID_INDConnector) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-       return CNDConnector::CreateInstance(this, ppConnector);\r
- }\r
\r
- STDMETHODIMP CNDAdapter::\r
--CreateListen(INDListen** ppListen)\r
-+CreateListen(REFIID iid, VOID** ppListen)\r
- {\r
-+      if (iid != IID_INDListen) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-       return CNDListen::CreateInstance(this, ppListen);\r
- }\r
-diff --git a/trunk/ulp/netdirect2/user/nd_adapter.h b/trunk/ulp/netdirect2/user/nd_adapter.h
-index 9821570..941f80a 100644
---- a/trunk/ulp/netdirect2/user/nd_adapter.h
-+++ b/trunk/ulp/netdirect2/user/nd_adapter.h
-@@ -49,32 +49,32 @@ public:
-       STDMETHODIMP_(HANDLE) GetFileHandle();\r
-       STDMETHODIMP Query(ND_ADAPTER_INFO* pInfo, SIZE_T* pcbInfo);\r
-       STDMETHODIMP QueryAddressList(SOCKET_ADDRESS_LIST* pAddressList, SIZE_T* pcbAddressList);\r
--      STDMETHODIMP CreateCompletionQueue(DWORD queueDepth, GROUP_AFFINITY* pAffinity,\r
--                                                                         INDCompletionQueue** ppCompletionQueue);\r
--      STDMETHODIMP CreateMemoryRegion(INDMemoryRegion** ppMemoryRegion);\r
--      STDMETHODIMP CreateMemoryWindow(INDMemoryWindow** ppMemoryWindow);\r
--      STDMETHODIMP CreateSharedReceiveQueue(DWORD queueDepth, DWORD maxSGE,\r
--                                                                                DWORD notifyThreshold, GROUP_AFFINITY* pAffinity,\r
--                                                                                INDSharedReceiveQueue** ppSharedReceiveQueue);\r
--      STDMETHODIMP CreateQueuePair(INDCompletionQueue* pReceiveCompletionQueue,\r
--                                                               INDCompletionQueue* pInitiatorCompletionQueue, VOID* context,\r
-+      STDMETHODIMP CreateCompletionQueue(REFIID iid, DWORD queueDepth, USHORT group,\r
-+                                                                         KAFFINITY affinity, VOID** ppCompletionQueue);\r
-+      STDMETHODIMP CreateMemoryRegion(REFIID iid, VOID** ppMemoryRegion);\r
-+      STDMETHODIMP CreateMemoryWindow(REFIID iid, VOID** ppMemoryWindow);\r
-+      STDMETHODIMP CreateSharedReceiveQueue(REFIID iid, DWORD queueDepth, DWORD maxSge,\r
-+                                                                                DWORD notifyThreshold, USHORT group,\r
-+                                                                                KAFFINITY affinity, VOID** ppSharedReceiveQueue);\r
-+      STDMETHODIMP CreateQueuePair(REFIID iid, IUnknown* pReceiveCompletionQueue,\r
-+                                                               IUnknown* pInitiatorCompletionQueue, VOID* context,\r
-                                                                DWORD receiveQueueDepth, DWORD initiatorQueueDepth,\r
--                                                               DWORD maxReceiveRequestSGE, DWORD maxInitiatorRequestSGE,\r
--                                                               INDQueuePair** ppQueuePair);\r
--      STDMETHODIMP CreateQueuePairWithSRQ(INDCompletionQueue* pReceiveCompletionQueue,\r
--                                                                              INDCompletionQueue* pInitiatorCompletionQueue,\r
--                                                                              INDSharedReceiveQueue* pSharedReceiveQueue, VOID* context,\r
--                                                                              DWORD initiatorQueueDepth, DWORD maxInitiatorRequestSGE,\r
--                                                                              INDQueuePair** ppQueuePair);\r
--      STDMETHODIMP CreateSharedEndpoint(INDSharedEndpoint** ppSharedEndpoint);\r
--      STDMETHODIMP CreateConnector(INDConnector** ppConnector);\r
--      STDMETHODIMP CreateListen(INDListen** ppListen);\r
-+                                                               DWORD maxReceiveRequestSge, DWORD maxInitiatorRequestSge,\r
-+                                                               VOID** ppQueuePair);\r
-+      STDMETHODIMP CreateQueuePairWithSrq(REFIID, IUnknown* pReceiveCompletionQueue,\r
-+                                                                              IUnknown* pInitiatorCompletionQueue,\r
-+                                                                              IUnknown* pSharedReceiveQueue, VOID* context,\r
-+                                                                              DWORD initiatorQueueDepth, DWORD maxInitiatorRequestSge,\r
-+                                                                              VOID** ppQueuePair);\r
-+      STDMETHODIMP CreateSharedEndpoint(REFIID iid, VOID** ppSharedEndpoint);\r
-+      STDMETHODIMP CreateConnector(REFIID iid, VOID** ppConnector);\r
-+      STDMETHODIMP CreateListen(REFIID iid, VOID** ppListen);\r
\r
-       CNDAdapter(CNDProvider *pProvider);\r
-       ~CNDAdapter();\r
-       void Delete() {delete this;}\r
-       static STDMETHODIMP\r
--      CreateInstance(CNDProvider *pProvider, UINT64 adapterId, INDAdapter** ppAdapter)\r
-+      CreateInstance(CNDProvider *pProvider, UINT64 adapterId, VOID** ppAdapter)\r
-       {\r
-               HRESULT hr;\r
-               CNDAdapter *adapter;\r
-diff --git a/trunk/ulp/netdirect2/user/nd_connect.h b/trunk/ulp/netdirect2/user/nd_connect.h
-index dd1e142..ea2b12d 100644
---- a/trunk/ulp/netdirect2/user/nd_connect.h
-+++ b/trunk/ulp/netdirect2/user/nd_connect.h
-@@ -79,7 +79,7 @@ public:
-       ~CNDConnector();\r
-       void Delete() {delete this;}\r
-       static STDMETHODIMP\r
--      CreateInstance(CNDAdapter *pAdapter, INDConnector** ppConnector)\r
-+      CreateInstance(CNDAdapter *pAdapter, VOID** ppConnector)\r
-       {\r
-               HRESULT hr;\r
-               CNDConnector *conn;\r
-diff --git a/trunk/ulp/netdirect2/user/nd_cq.h b/trunk/ulp/netdirect2/user/nd_cq.h
-index 1f6af0e..dcca211 100644
---- a/trunk/ulp/netdirect2/user/nd_cq.h
-+++ b/trunk/ulp/netdirect2/user/nd_cq.h
-@@ -58,7 +58,7 @@ public:
-       ~CNDCompletionQueue();\r
-       void Delete() {delete this;}\r
-       static STDMETHODIMP\r
--      CreateInstance(CNDAdapter *pAdapter, DWORD queueDepth, INDCompletionQueue** ppCq)\r
-+      CreateInstance(CNDAdapter *pAdapter, DWORD queueDepth, VOID** ppCq)\r
-       {\r
-               HRESULT hr;\r
-               CNDCompletionQueue *cq;\r
-diff --git a/trunk/ulp/netdirect2/user/nd_ep.h b/trunk/ulp/netdirect2/user/nd_ep.h
-index e33df94..81ec189 100644
---- a/trunk/ulp/netdirect2/user/nd_ep.h
-+++ b/trunk/ulp/netdirect2/user/nd_ep.h
-@@ -54,7 +54,7 @@ public:
-       ~CNDSharedEndpoint();\r
-       void Delete() {delete this;}\r
-       static STDMETHODIMP\r
--      CreateInstance(CNDAdapter *pAdapter, INDSharedEndpoint** ppSharedEndpoint)\r
-+      CreateInstance(CNDAdapter *pAdapter, VOID** ppSharedEndpoint)\r
-       {\r
-               HRESULT hr;\r
-               CNDSharedEndpoint *ep;\r
-diff --git a/trunk/ulp/netdirect2/user/nd_listen.h b/trunk/ulp/netdirect2/user/nd_listen.h
-index d077a3e..83a5b86 100644
---- a/trunk/ulp/netdirect2/user/nd_listen.h
-+++ b/trunk/ulp/netdirect2/user/nd_listen.h
-@@ -58,7 +58,7 @@ public:
-       ~CNDListen();\r
-       void Delete() {delete this;}\r
-       static STDMETHODIMP\r
--      CreateInstance(CNDAdapter *pAdapter, INDListen** ppListen)\r
-+      CreateInstance(CNDAdapter *pAdapter, VOID** ppListen)\r
-       {\r
-               HRESULT hr;\r
-               CNDListen *listener;\r
-diff --git a/trunk/ulp/netdirect2/user/nd_mw.h b/trunk/ulp/netdirect2/user/nd_mw.h
-index 8409a0e..47c18b2 100644
---- a/trunk/ulp/netdirect2/user/nd_mw.h
-+++ b/trunk/ulp/netdirect2/user/nd_mw.h
-@@ -56,7 +56,7 @@ public:
-       ~CNDMemoryRegion();\r
-       void Delete() {delete this;}\r
-       static STDMETHODIMP\r
--      CreateInstance(CNDAdapter *pAdapter, INDMemoryRegion** ppMemoryRegion)\r
-+      CreateInstance(CNDAdapter *pAdapter, VOID** ppMemoryRegion)\r
-       {\r
-               HRESULT hr;\r
-               CNDMemoryRegion *mr;\r
-@@ -97,7 +97,7 @@ public:
-       ~CNDMemoryWindow();\r
-       void Delete() {delete this;}\r
-       static STDMETHODIMP\r
--      CreateInstance(CNDAdapter *pAdapter, INDMemoryWindow** ppMemoryWindow)\r
-+      CreateInstance(CNDAdapter *pAdapter, VOID** ppMemoryWindow)\r
-       {\r
-               HRESULT hr;\r
-               CNDMemoryWindow *mw;\r
-diff --git a/trunk/ulp/netdirect2/user/nd_provider.cpp b/trunk/ulp/netdirect2/user/nd_provider.cpp
-index 92835fd..968193d 100644
---- a/trunk/ulp/netdirect2/user/nd_provider.cpp
-+++ b/trunk/ulp/netdirect2/user/nd_provider.cpp
-@@ -148,8 +148,12 @@ ResolveAddress(const struct sockaddr* pAddress, SIZE_T cbAddress, UINT64* pAdapt
- }\r
\r
- STDMETHODIMP CNDProvider::\r
--OpenAdapter(UINT64 adapterId, INDAdapter** ppAdapter)\r
-+OpenAdapter(REFIID iid, UINT64 adapterId, VOID** ppAdapter)\r
- {\r
-+      if (iid != IID_INDAdapter) {\r
-+              return E_NOINTERFACE;\r
-+      }\r
-+\r
-       return CNDAdapter::CreateInstance(this, adapterId, ppAdapter);\r
- }\r
\r
-diff --git a/trunk/ulp/netdirect2/user/nd_provider.h b/trunk/ulp/netdirect2/user/nd_provider.h
-index 15a74f6..b0e3709 100644
---- a/trunk/ulp/netdirect2/user/nd_provider.h
-+++ b/trunk/ulp/netdirect2/user/nd_provider.h
-@@ -49,7 +49,7 @@ public:
-                                                                 SIZE_T* pcbAddressList);\r
-       STDMETHODIMP ResolveAddress(const struct sockaddr* pAddress,\r
-                                                               SIZE_T cbAddress, UINT64* pAdapterId);\r
--      STDMETHODIMP OpenAdapter(UINT64 adapterId, INDAdapter** ppAdapter);\r
-+      STDMETHODIMP OpenAdapter(REFIID iid, UINT64 adapterId, VOID** ppAdapter);\r
\r
-       CNDProvider();\r
-       ~CNDProvider();\r
-diff --git a/trunk/ulp/netdirect2/user/nd_qp.h b/trunk/ulp/netdirect2/user/nd_qp.h
-index 1d09ddc..3ce320f 100644
---- a/trunk/ulp/netdirect2/user/nd_qp.h
-+++ b/trunk/ulp/netdirect2/user/nd_qp.h
-@@ -71,7 +71,7 @@ public:
-                                  CNDSharedReceiveQueue *pSharedReceiveQueue,\r
-                                  VOID* context, DWORD receiveQueueDepth, DWORD initiatorQueueDepth,\r
-                                  DWORD maxReceiveRequestSGE, DWORD maxInitiatorRequestSGE,\r
--                                 INDQueuePair** ppQueuePair)\r
-+                                 VOID** ppQueuePair)\r
-       {\r
-               HRESULT hr;\r
-               CNDQueuePair *qp;\r
-@@ -111,7 +111,7 @@ protected:
-                                         CNDCompletionQueue* pInitiatorCompletionQueue,\r
-                                         CNDSharedReceiveQueue *pSharedReceiveQueue,\r
-                                         VOID* context, DWORD receiveQueueDepth, DWORD initiatorQueueDepth,\r
--                                        DWORD maxReceiveRequestSGE, DWORD maxInitiatorRequestSGE);\r
-+                                        DWORD maxReceiveRequestSge, DWORD maxInitiatorRequestSGE);\r
-       STDMETHODIMP_(DWORD) ConvertSendFlags(DWORD Flags);\r
- };\r
\r
-diff --git a/trunk/ulp/netdirect2/user/nd_srq.cpp b/trunk/ulp/netdirect2/user/nd_srq.cpp
-index e472757..2856763 100644
---- a/trunk/ulp/netdirect2/user/nd_srq.cpp
-+++ b/trunk/ulp/netdirect2/user/nd_srq.cpp
-@@ -38,11 +38,10 @@ CNDSharedReceiveQueue::CNDSharedReceiveQueue(CNDAdapter *pAdapter)
- }\r
\r
- STDMETHODIMP CNDSharedReceiveQueue::\r
--Init(DWORD queueDepth, DWORD maxSGE, DWORD notifyThreshold, GROUP_AFFINITY* pAffinity)\r
-+Init(DWORD queueDepth, DWORD maxSGE, DWORD notifyThreshold, KAFFINITY affinity)\r
- {\r
-       HRESULT hr;\r
\r
--      //??? pAffinity ignored\r
-       hr = m_pAdapter->m_pWvPd->CreateSharedReceiveQueue(queueDepth, maxSGE,\r
-                                                                                                          notifyThreshold, &m_pWvSrq);\r
-       return NDConvertWVStatus(hr);\r
-diff --git a/trunk/ulp/netdirect2/user/nd_srq.h b/trunk/ulp/netdirect2/user/nd_srq.h
-index 80f2c4b..c35cc97 100644
---- a/trunk/ulp/netdirect2/user/nd_srq.h
-+++ b/trunk/ulp/netdirect2/user/nd_srq.h
-@@ -60,8 +60,8 @@ public:
-       void Delete() {delete this;}\r
-       static STDMETHODIMP\r
-       CreateInstance(CNDAdapter *pAdapter, DWORD queueDepth, DWORD maxSGE,\r
--                                 DWORD notifyThreshold, GROUP_AFFINITY* pAffinity,\r
--                                 INDSharedReceiveQueue** ppSharedReceiveQueue)\r
-+                                 DWORD notifyThreshold, KAFFINITY affinity,\r
-+                                 VOID** ppSharedReceiveQueue)\r
-       {\r
-               HRESULT hr;\r
-               CNDSharedReceiveQueue *srq;\r
-@@ -72,7 +72,7 @@ public:
-                       goto err1;\r
-               }\r
\r
--              hr = srq->Init(queueDepth, maxSGE, notifyThreshold, pAffinity);\r
-+              hr = srq->Init(queueDepth, maxSGE, notifyThreshold, affinity);\r
-               if (FAILED(hr)) {\r
-                       goto err2;\r
-               }\r
-@@ -93,7 +93,7 @@ protected:
-       CNDAdapter                              *m_pAdapter;\r
\r
-       STDMETHODIMP Init(DWORD queueDepth, DWORD maxSGE, DWORD notifyThreshold,\r
--                                        GROUP_AFFINITY* pAffinity);\r
-+                                        KAFFINITY affinity);\r
- };\r
\r
- #endif // _ND_SRQ_H_
diff --git a/patches/nd2-provide-update-provider-ap b/patches/nd2-provide-update-provider-ap
new file mode 100644 (file)
index 0000000..950a434
--- /dev/null
@@ -0,0 +1,406 @@
+Bottom: 06cdce656914daffeb60188020c0cbccef3f6806
+Top:    35779dc2230b0eb4dd48c03129e98b3caee2c9de
+Author: Sean Hefty <sean.hefty@intel.com>
+Date:   2010-07-27 00:09:01 -0700
+
+nd2/provide: update provider APIs to match latest spec
+
+Signed-off-by: Sean Hefty <sean.hefty@intel.com>
+
+---
+
+diff --git a/trunk/ulp/netdirect2/user/nd_adapter.cpp b/trunk/ulp/netdirect2/user/nd_adapter.cpp
+index 475c1e6..aa4cb92 100644
+--- a/trunk/ulp/netdirect2/user/nd_adapter.cpp
++++ b/trunk/ulp/netdirect2/user/nd_adapter.cpp
+@@ -167,80 +167,112 @@ QueryAddressList(SOCKET_ADDRESS_LIST* pAddressList, SIZE_T* pcbAddressList)
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateCompletionQueue(DWORD queueDepth, GROUP_AFFINITY* pAffinity,\r
+-                                        INDCompletionQueue** ppCompletionQueue)\r
++CreateCompletionQueue(REFIID iid, DWORD queueDepth, USHORT group, KAFFINITY affinity,\r
++                                        VOID** ppCompletionQueue)\r
+ {\r
+       return CNDCompletionQueue::CreateInstance(this, queueDepth, ppCompletionQueue);\r
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateMemoryRegion(INDMemoryRegion** ppMemoryRegion)\r
++CreateMemoryRegion(REFIID iid, VOID** ppMemoryRegion)\r
+ {\r
++      if (iid != IID_INDMemoryRegion) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
+       return CNDMemoryRegion::CreateInstance(this, ppMemoryRegion);\r
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateMemoryWindow(INDMemoryWindow** ppMemoryWindow)\r
++CreateMemoryWindow(REFIID iid, VOID** ppMemoryWindow)\r
+ {\r
++      if (iid != IID_INDMemoryWindow) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
+       return CNDMemoryWindow::CreateInstance(this, ppMemoryWindow);\r
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateSharedReceiveQueue(DWORD queueDepth, DWORD maxSGE,\r
+-                                               DWORD notifyThreshold, GROUP_AFFINITY* pAffinity,\r
+-                                               INDSharedReceiveQueue** ppSharedReceiveQueue)\r
++CreateSharedReceiveQueue(REFIID iid, DWORD queueDepth, DWORD maxSge,\r
++                                               DWORD notifyThreshold, USHORT group,\r
++                                               KAFFINITY affinity, VOID** ppSharedReceiveQueue)\r
+ {\r
+-      return CNDSharedReceiveQueue::CreateInstance(this, queueDepth, maxSGE,\r
+-                                                                                               notifyThreshold, pAffinity,\r
++      if (iid != IID_INDSharedReceiveQueue) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
++      return CNDSharedReceiveQueue::CreateInstance(this, queueDepth, maxSge,\r
++                                                                                               notifyThreshold, affinity,\r
+                                                                                                ppSharedReceiveQueue);\r
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateQueuePair(INDCompletionQueue* pReceiveCompletionQueue,\r
+-                              INDCompletionQueue* pInitiatorCompletionQueue, VOID* context,\r
++CreateQueuePair(REFIID iid, IUnknown* pReceiveCompletionQueue,\r
++                              IUnknown* pInitiatorCompletionQueue, VOID* context,\r
+                               DWORD receiveQueueDepth, DWORD initiatorQueueDepth,\r
+-                              DWORD maxReceiveRequestSGE, DWORD maxInitiatorRequestSGE,\r
+-                              INDQueuePair** ppQueuePair)\r
++                              DWORD maxReceiveRequestSge, DWORD maxInitiatorRequestSge,\r
++                              VOID** ppQueuePair)\r
+ {\r
+       CNDCompletionQueue *rcq = (CNDCompletionQueue *) pReceiveCompletionQueue;\r
+       CNDCompletionQueue *icq = (CNDCompletionQueue *) pInitiatorCompletionQueue;\r
\r
++      if (iid != IID_INDQueuePair) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
+       return CNDQueuePair::CreateInstance(this, rcq, icq, NULL,\r
+                                                                               context, receiveQueueDepth, initiatorQueueDepth,\r
+-                                                                              maxReceiveRequestSGE, maxInitiatorRequestSGE,\r
++                                                                              maxReceiveRequestSge, maxInitiatorRequestSge,\r
+                                                                               ppQueuePair);\r
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateQueuePairWithSRQ(INDCompletionQueue* pReceiveCompletionQueue,\r
+-                                         INDCompletionQueue* pInitiatorCompletionQueue,\r
+-                                         INDSharedReceiveQueue* pSharedReceiveQueue, VOID* context,\r
+-                                         DWORD initiatorQueueDepth, DWORD maxInitiatorRequestSGE,\r
+-                                         INDQueuePair** ppQueuePair)\r
++CreateQueuePairWithSrq(REFIID iid, IUnknown* pReceiveCompletionQueue,\r
++                                         IUnknown* pInitiatorCompletionQueue,\r
++                                         IUnknown* pSharedReceiveQueue, VOID* context,\r
++                                         DWORD initiatorQueueDepth, DWORD maxInitiatorRequestSge,\r
++                                         VOID** ppQueuePair)\r
+ {\r
+       CNDCompletionQueue *rcq = (CNDCompletionQueue *) pReceiveCompletionQueue;\r
+       CNDCompletionQueue *icq = (CNDCompletionQueue *) pInitiatorCompletionQueue;\r
+       CNDSharedReceiveQueue *srq = (CNDSharedReceiveQueue *) pSharedReceiveQueue;\r
\r
++      if (iid != IID_INDQueuePair) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
+       return CNDQueuePair::CreateInstance(this, rcq, icq, srq,\r
+                                                                               context, 0, initiatorQueueDepth, 0,\r
+-                                                                              maxInitiatorRequestSGE, ppQueuePair);\r
++                                                                              maxInitiatorRequestSge, ppQueuePair);\r
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateSharedEndpoint(INDSharedEndpoint** ppSharedEndpoint)\r
++CreateSharedEndpoint(REFIID iid, VOID** ppSharedEndpoint)\r
+ {\r
++      if (iid != IID_INDSharedEndpoint) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
+       return CNDSharedEndpoint::CreateInstance(this, ppSharedEndpoint);\r
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateConnector(INDConnector** ppConnector)\r
++CreateConnector(REFIID iid, VOID** ppConnector)\r
+ {\r
++      if (iid != IID_INDConnector) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
+       return CNDConnector::CreateInstance(this, ppConnector);\r
+ }\r
\r
+ STDMETHODIMP CNDAdapter::\r
+-CreateListen(INDListen** ppListen)\r
++CreateListen(REFIID iid, VOID** ppListen)\r
+ {\r
++      if (iid != IID_INDListen) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
+       return CNDListen::CreateInstance(this, ppListen);\r
+ }\r
+diff --git a/trunk/ulp/netdirect2/user/nd_adapter.h b/trunk/ulp/netdirect2/user/nd_adapter.h
+index 9821570..941f80a 100644
+--- a/trunk/ulp/netdirect2/user/nd_adapter.h
++++ b/trunk/ulp/netdirect2/user/nd_adapter.h
+@@ -49,32 +49,32 @@ public:
+       STDMETHODIMP_(HANDLE) GetFileHandle();\r
+       STDMETHODIMP Query(ND_ADAPTER_INFO* pInfo, SIZE_T* pcbInfo);\r
+       STDMETHODIMP QueryAddressList(SOCKET_ADDRESS_LIST* pAddressList, SIZE_T* pcbAddressList);\r
+-      STDMETHODIMP CreateCompletionQueue(DWORD queueDepth, GROUP_AFFINITY* pAffinity,\r
+-                                                                         INDCompletionQueue** ppCompletionQueue);\r
+-      STDMETHODIMP CreateMemoryRegion(INDMemoryRegion** ppMemoryRegion);\r
+-      STDMETHODIMP CreateMemoryWindow(INDMemoryWindow** ppMemoryWindow);\r
+-      STDMETHODIMP CreateSharedReceiveQueue(DWORD queueDepth, DWORD maxSGE,\r
+-                                                                                DWORD notifyThreshold, GROUP_AFFINITY* pAffinity,\r
+-                                                                                INDSharedReceiveQueue** ppSharedReceiveQueue);\r
+-      STDMETHODIMP CreateQueuePair(INDCompletionQueue* pReceiveCompletionQueue,\r
+-                                                               INDCompletionQueue* pInitiatorCompletionQueue, VOID* context,\r
++      STDMETHODIMP CreateCompletionQueue(REFIID iid, DWORD queueDepth, USHORT group,\r
++                                                                         KAFFINITY affinity, VOID** ppCompletionQueue);\r
++      STDMETHODIMP CreateMemoryRegion(REFIID iid, VOID** ppMemoryRegion);\r
++      STDMETHODIMP CreateMemoryWindow(REFIID iid, VOID** ppMemoryWindow);\r
++      STDMETHODIMP CreateSharedReceiveQueue(REFIID iid, DWORD queueDepth, DWORD maxSge,\r
++                                                                                DWORD notifyThreshold, USHORT group,\r
++                                                                                KAFFINITY affinity, VOID** ppSharedReceiveQueue);\r
++      STDMETHODIMP CreateQueuePair(REFIID iid, IUnknown* pReceiveCompletionQueue,\r
++                                                               IUnknown* pInitiatorCompletionQueue, VOID* context,\r
+                                                                DWORD receiveQueueDepth, DWORD initiatorQueueDepth,\r
+-                                                               DWORD maxReceiveRequestSGE, DWORD maxInitiatorRequestSGE,\r
+-                                                               INDQueuePair** ppQueuePair);\r
+-      STDMETHODIMP CreateQueuePairWithSRQ(INDCompletionQueue* pReceiveCompletionQueue,\r
+-                                                                              INDCompletionQueue* pInitiatorCompletionQueue,\r
+-                                                                              INDSharedReceiveQueue* pSharedReceiveQueue, VOID* context,\r
+-                                                                              DWORD initiatorQueueDepth, DWORD maxInitiatorRequestSGE,\r
+-                                                                              INDQueuePair** ppQueuePair);\r
+-      STDMETHODIMP CreateSharedEndpoint(INDSharedEndpoint** ppSharedEndpoint);\r
+-      STDMETHODIMP CreateConnector(INDConnector** ppConnector);\r
+-      STDMETHODIMP CreateListen(INDListen** ppListen);\r
++                                                               DWORD maxReceiveRequestSge, DWORD maxInitiatorRequestSge,\r
++                                                               VOID** ppQueuePair);\r
++      STDMETHODIMP CreateQueuePairWithSrq(REFIID, IUnknown* pReceiveCompletionQueue,\r
++                                                                              IUnknown* pInitiatorCompletionQueue,\r
++                                                                              IUnknown* pSharedReceiveQueue, VOID* context,\r
++                                                                              DWORD initiatorQueueDepth, DWORD maxInitiatorRequestSge,\r
++                                                                              VOID** ppQueuePair);\r
++      STDMETHODIMP CreateSharedEndpoint(REFIID iid, VOID** ppSharedEndpoint);\r
++      STDMETHODIMP CreateConnector(REFIID iid, VOID** ppConnector);\r
++      STDMETHODIMP CreateListen(REFIID iid, VOID** ppListen);\r
\r
+       CNDAdapter(CNDProvider *pProvider);\r
+       ~CNDAdapter();\r
+       void Delete() {delete this;}\r
+       static STDMETHODIMP\r
+-      CreateInstance(CNDProvider *pProvider, UINT64 adapterId, INDAdapter** ppAdapter)\r
++      CreateInstance(CNDProvider *pProvider, UINT64 adapterId, VOID** ppAdapter)\r
+       {\r
+               HRESULT hr;\r
+               CNDAdapter *adapter;\r
+diff --git a/trunk/ulp/netdirect2/user/nd_connect.h b/trunk/ulp/netdirect2/user/nd_connect.h
+index dd1e142..ea2b12d 100644
+--- a/trunk/ulp/netdirect2/user/nd_connect.h
++++ b/trunk/ulp/netdirect2/user/nd_connect.h
+@@ -79,7 +79,7 @@ public:
+       ~CNDConnector();\r
+       void Delete() {delete this;}\r
+       static STDMETHODIMP\r
+-      CreateInstance(CNDAdapter *pAdapter, INDConnector** ppConnector)\r
++      CreateInstance(CNDAdapter *pAdapter, VOID** ppConnector)\r
+       {\r
+               HRESULT hr;\r
+               CNDConnector *conn;\r
+diff --git a/trunk/ulp/netdirect2/user/nd_cq.h b/trunk/ulp/netdirect2/user/nd_cq.h
+index 1f6af0e..dcca211 100644
+--- a/trunk/ulp/netdirect2/user/nd_cq.h
++++ b/trunk/ulp/netdirect2/user/nd_cq.h
+@@ -58,7 +58,7 @@ public:
+       ~CNDCompletionQueue();\r
+       void Delete() {delete this;}\r
+       static STDMETHODIMP\r
+-      CreateInstance(CNDAdapter *pAdapter, DWORD queueDepth, INDCompletionQueue** ppCq)\r
++      CreateInstance(CNDAdapter *pAdapter, DWORD queueDepth, VOID** ppCq)\r
+       {\r
+               HRESULT hr;\r
+               CNDCompletionQueue *cq;\r
+diff --git a/trunk/ulp/netdirect2/user/nd_ep.h b/trunk/ulp/netdirect2/user/nd_ep.h
+index e33df94..81ec189 100644
+--- a/trunk/ulp/netdirect2/user/nd_ep.h
++++ b/trunk/ulp/netdirect2/user/nd_ep.h
+@@ -54,7 +54,7 @@ public:
+       ~CNDSharedEndpoint();\r
+       void Delete() {delete this;}\r
+       static STDMETHODIMP\r
+-      CreateInstance(CNDAdapter *pAdapter, INDSharedEndpoint** ppSharedEndpoint)\r
++      CreateInstance(CNDAdapter *pAdapter, VOID** ppSharedEndpoint)\r
+       {\r
+               HRESULT hr;\r
+               CNDSharedEndpoint *ep;\r
+diff --git a/trunk/ulp/netdirect2/user/nd_listen.h b/trunk/ulp/netdirect2/user/nd_listen.h
+index d077a3e..83a5b86 100644
+--- a/trunk/ulp/netdirect2/user/nd_listen.h
++++ b/trunk/ulp/netdirect2/user/nd_listen.h
+@@ -58,7 +58,7 @@ public:
+       ~CNDListen();\r
+       void Delete() {delete this;}\r
+       static STDMETHODIMP\r
+-      CreateInstance(CNDAdapter *pAdapter, INDListen** ppListen)\r
++      CreateInstance(CNDAdapter *pAdapter, VOID** ppListen)\r
+       {\r
+               HRESULT hr;\r
+               CNDListen *listener;\r
+diff --git a/trunk/ulp/netdirect2/user/nd_mw.h b/trunk/ulp/netdirect2/user/nd_mw.h
+index 8409a0e..47c18b2 100644
+--- a/trunk/ulp/netdirect2/user/nd_mw.h
++++ b/trunk/ulp/netdirect2/user/nd_mw.h
+@@ -56,7 +56,7 @@ public:
+       ~CNDMemoryRegion();\r
+       void Delete() {delete this;}\r
+       static STDMETHODIMP\r
+-      CreateInstance(CNDAdapter *pAdapter, INDMemoryRegion** ppMemoryRegion)\r
++      CreateInstance(CNDAdapter *pAdapter, VOID** ppMemoryRegion)\r
+       {\r
+               HRESULT hr;\r
+               CNDMemoryRegion *mr;\r
+@@ -97,7 +97,7 @@ public:
+       ~CNDMemoryWindow();\r
+       void Delete() {delete this;}\r
+       static STDMETHODIMP\r
+-      CreateInstance(CNDAdapter *pAdapter, INDMemoryWindow** ppMemoryWindow)\r
++      CreateInstance(CNDAdapter *pAdapter, VOID** ppMemoryWindow)\r
+       {\r
+               HRESULT hr;\r
+               CNDMemoryWindow *mw;\r
+diff --git a/trunk/ulp/netdirect2/user/nd_provider.cpp b/trunk/ulp/netdirect2/user/nd_provider.cpp
+index 92835fd..968193d 100644
+--- a/trunk/ulp/netdirect2/user/nd_provider.cpp
++++ b/trunk/ulp/netdirect2/user/nd_provider.cpp
+@@ -148,8 +148,12 @@ ResolveAddress(const struct sockaddr* pAddress, SIZE_T cbAddress, UINT64* pAdapt
+ }\r
\r
+ STDMETHODIMP CNDProvider::\r
+-OpenAdapter(UINT64 adapterId, INDAdapter** ppAdapter)\r
++OpenAdapter(REFIID iid, UINT64 adapterId, VOID** ppAdapter)\r
+ {\r
++      if (iid != IID_INDAdapter) {\r
++              return E_NOINTERFACE;\r
++      }\r
++\r
+       return CNDAdapter::CreateInstance(this, adapterId, ppAdapter);\r
+ }\r
\r
+diff --git a/trunk/ulp/netdirect2/user/nd_provider.h b/trunk/ulp/netdirect2/user/nd_provider.h
+index 15a74f6..b0e3709 100644
+--- a/trunk/ulp/netdirect2/user/nd_provider.h
++++ b/trunk/ulp/netdirect2/user/nd_provider.h
+@@ -49,7 +49,7 @@ public:
+                                                                 SIZE_T* pcbAddressList);\r
+       STDMETHODIMP ResolveAddress(const struct sockaddr* pAddress,\r
+                                                               SIZE_T cbAddress, UINT64* pAdapterId);\r
+-      STDMETHODIMP OpenAdapter(UINT64 adapterId, INDAdapter** ppAdapter);\r
++      STDMETHODIMP OpenAdapter(REFIID iid, UINT64 adapterId, VOID** ppAdapter);\r
\r
+       CNDProvider();\r
+       ~CNDProvider();\r
+diff --git a/trunk/ulp/netdirect2/user/nd_qp.h b/trunk/ulp/netdirect2/user/nd_qp.h
+index 1d09ddc..3ce320f 100644
+--- a/trunk/ulp/netdirect2/user/nd_qp.h
++++ b/trunk/ulp/netdirect2/user/nd_qp.h
+@@ -71,7 +71,7 @@ public:
+                                  CNDSharedReceiveQueue *pSharedReceiveQueue,\r
+                                  VOID* context, DWORD receiveQueueDepth, DWORD initiatorQueueDepth,\r
+                                  DWORD maxReceiveRequestSGE, DWORD maxInitiatorRequestSGE,\r
+-                                 INDQueuePair** ppQueuePair)\r
++                                 VOID** ppQueuePair)\r
+       {\r
+               HRESULT hr;\r
+               CNDQueuePair *qp;\r
+@@ -111,7 +111,7 @@ protected:
+                                         CNDCompletionQueue* pInitiatorCompletionQueue,\r
+                                         CNDSharedReceiveQueue *pSharedReceiveQueue,\r
+                                         VOID* context, DWORD receiveQueueDepth, DWORD initiatorQueueDepth,\r
+-                                        DWORD maxReceiveRequestSGE, DWORD maxInitiatorRequestSGE);\r
++                                        DWORD maxReceiveRequestSge, DWORD maxInitiatorRequestSGE);\r
+       STDMETHODIMP_(DWORD) ConvertSendFlags(DWORD Flags);\r
+ };\r
\r
+diff --git a/trunk/ulp/netdirect2/user/nd_srq.cpp b/trunk/ulp/netdirect2/user/nd_srq.cpp
+index e472757..ab0abd3 100644
+--- a/trunk/ulp/netdirect2/user/nd_srq.cpp
++++ b/trunk/ulp/netdirect2/user/nd_srq.cpp
+@@ -38,11 +38,10 @@ CNDSharedReceiveQueue::CNDSharedReceiveQueue(CNDAdapter *pAdapter)
+ }\r
\r
+ STDMETHODIMP CNDSharedReceiveQueue::\r
+-Init(DWORD queueDepth, DWORD maxSGE, DWORD notifyThreshold, GROUP_AFFINITY* pAffinity)\r
++Init(DWORD queueDepth, DWORD maxSGE, DWORD notifyThreshold, KAFFINITY affinity)\r
+ {\r
+       HRESULT hr;\r
\r
+-      //??? pAffinity ignored\r
+       hr = m_pAdapter->m_pWvPd->CreateSharedReceiveQueue(queueDepth, maxSGE,\r
+                                                                                                          notifyThreshold, &m_pWvSrq);\r
+       return NDConvertWVStatus(hr);\r
+@@ -101,6 +100,12 @@ GetOverlappedResult(OVERLAPPED *pOverlapped, BOOL bWait)
+ }\r
\r
+ STDMETHODIMP CNDSharedReceiveQueue::\r
++GetNotifyAffinity(USHORT *pGroup, KAFFINITY* pAffinity)\r
++{\r
++      return ND_NOT_SUPPORTED;\r
++}\r
++\r
++STDMETHODIMP CNDSharedReceiveQueue::\r
+ Modify(DWORD queueDepth, DWORD notifyThreshold)\r
+ {\r
+       HRESULT hr;\r
+diff --git a/trunk/ulp/netdirect2/user/nd_srq.h b/trunk/ulp/netdirect2/user/nd_srq.h
+index 80f2c4b..79f3dc1 100644
+--- a/trunk/ulp/netdirect2/user/nd_srq.h
++++ b/trunk/ulp/netdirect2/user/nd_srq.h
+@@ -51,6 +51,7 @@ public:
+       STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped, BOOL bWait);\r
\r
+       // INDSharedReceiveQueue methods\r
++      STDMETHODIMP GetNotifyAffinity(USHORT *pGroup, KAFFINITY* pAffinity);\r
+       STDMETHODIMP Modify(DWORD queueDepth, DWORD notifyThreshold);\r
+       STDMETHODIMP Notify(OVERLAPPED* pOverlapped);\r
+       STDMETHODIMP Receive(VOID* requestContext, const ND_SGE* pSGE, DWORD nSGE);\r
+@@ -60,8 +61,8 @@ public:
+       void Delete() {delete this;}\r
+       static STDMETHODIMP\r
+       CreateInstance(CNDAdapter *pAdapter, DWORD queueDepth, DWORD maxSGE,\r
+-                                 DWORD notifyThreshold, GROUP_AFFINITY* pAffinity,\r
+-                                 INDSharedReceiveQueue** ppSharedReceiveQueue)\r
++                                 DWORD notifyThreshold, KAFFINITY affinity,\r
++                                 VOID** ppSharedReceiveQueue)\r
+       {\r
+               HRESULT hr;\r
+               CNDSharedReceiveQueue *srq;\r
+@@ -72,7 +73,7 @@ public:
+                       goto err1;\r
+               }\r
\r
+-              hr = srq->Init(queueDepth, maxSGE, notifyThreshold, pAffinity);\r
++              hr = srq->Init(queueDepth, maxSGE, notifyThreshold, affinity);\r
+               if (FAILED(hr)) {\r
+                       goto err2;\r
+               }\r
+@@ -93,7 +94,7 @@ protected:
+       CNDAdapter                              *m_pAdapter;\r
\r
+       STDMETHODIMP Init(DWORD queueDepth, DWORD maxSGE, DWORD notifyThreshold,\r
+-                                        GROUP_AFFINITY* pAffinity);\r
++                                        KAFFINITY affinity);\r
+ };\r
\r
+ #endif // _ND_SRQ_H_
diff --git a/patches/srq b/patches/srq
deleted file mode 100644 (file)
index 317b093..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-Bottom: d3479d116ff5a108058c5d9a747892a3388c40a8
-Top:    14f5873cf5f2c53f80d287f3300b462819b45a9a
-Author: Sean Hefty <sean.hefty@intel.com>
-Date:   2010-07-26 17:23:20 -0700
-
-nd: update SRQ APIs to match latest ND spec
-
-Signed-off-by: Sean Hefty <sean.hefty@intel.com>
-
-
----
-
-diff --git a/trunk/ulp/netdirect2/user/nd_srq.cpp b/trunk/ulp/netdirect2/user/nd_srq.cpp
-index c64b9af..7499617 100644
---- a/trunk/ulp/netdirect2/user/nd_srq.cpp
-+++ b/trunk/ulp/netdirect2/user/nd_srq.cpp
-@@ -100,6 +100,12 @@ GetOverlappedResult(OVERLAPPED *pOverlapped, BOOL bWait)
- }\r
\r
- STDMETHODIMP CNDSharedReceiveQueue::\r
-+GetNotifyAffinity(USHORT *pGroup, KAFFINITY* pAffinity)\r
-+{\r
-+      return ND_NOT_SUPPORTED;\r
-+}\r
-+\r
-+STDMETHODIMP CNDSharedReceiveQueue::\r
- Modify(DWORD queueDepth, DWORD notifyThreshold)\r
- {\r
-       HRESULT hr;\r
-diff --git a/trunk/ulp/netdirect2/user/nd_srq.h b/trunk/ulp/netdirect2/user/nd_srq.h
-index b4f2058..5384036 100644
---- a/trunk/ulp/netdirect2/user/nd_srq.h
-+++ b/trunk/ulp/netdirect2/user/nd_srq.h
-@@ -51,6 +51,7 @@ public:
-       STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped, BOOL bWait);\r
\r
-       // INDSharedReceiveQueue methods\r
-+      STDMETHODIMP GetNotifyAffinity(USHORT *pGroup, KAFFINITY* pAffinity);\r
-       STDMETHODIMP Modify(DWORD queueDepth, DWORD notifyThreshold);\r
-       STDMETHODIMP Notify(OVERLAPPED* pOverlapped);\r
-       STDMETHODIMP Receive(VOID* requestContext, const ND_SGE* pSge, DWORD nSge);