Stan Smith [Fri, 15 Oct 2010 16:16:37 +0000 (16:16 +0000)]
[ALL] remove all .cdf driver files as they are no longer part of the build process (inf2cat replaces info in .cdf files) svn commit 2969.
Tested by building winOFED 2.3 RC5
Stan Smith [Fri, 15 Oct 2010 15:55:30 +0000 (15:55 +0000)]
[WIX] Correct oversight in WinSock Direct install as disabled. When dperforming a NODRV=1 (NO Drivers) install, installsp.exe was omitted as the IPoIB driver is not an installed feature.
Remove installsp.exe from IPoIB feature and include it with IB tools feature.
Stan Smith [Fri, 15 Oct 2010 15:48:02 +0000 (15:48 +0000)]
[SRP] commit 2967 was incomplete, missed SunMicrosystems SRP dev IDs IBA\Cff00c690ep0108r0001 & IBA\Cff00c690ep0108
Rearranged Dev ID ordering to match pre-2967 commit ordering for clarity.
Stan Smith [Thu, 7 Oct 2010 20:01:21 +0000 (20:01 +0000)]
[DOCS] document Winsock Direct install changes: winOFED default install will install WSD, although WSD is no longer enabled/started by default (use installsp.exe -i) to enable.
Stan Smith [Thu, 7 Oct 2010 20:00:15 +0000 (20:00 +0000)]
[DOCS] document Winsock Direct install changes: winOFED default install will install WSD, although WSD is no longer enabled/started by default (use installsp.exe -i) to enable.
Stan Smith [Thu, 7 Oct 2010 19:51:42 +0000 (19:51 +0000)]
[IPoIB_NDIS6_CM] The patch prevents race with BSOD when NDIS call receive callback of ipoib while
some ipoib global objects are under destruction (like p_adapter ->p_port).
It was tested by night regression run on IPoIB driver
Adding shutter_shut for Adapter Reset flow
Signed-off by: Alexander Naslednikov (xalex at mellanox.co.il)
Stan Smith [Thu, 7 Oct 2010 19:41:10 +0000 (19:41 +0000)]
[IPoIB_NDIS6_CM] NDIS6 IPOIB had a problem with forwarding packets.
The packet would be sent with one fragment size with size 0. The hw would than refuse to send the packet.
signed-off-by: Tzachi Dar <tzachid@mellanox.co.il>
Stan Smith [Fri, 1 Oct 2010 16:56:14 +0000 (16:56 +0000)]
[IPoIB_NDIS6_CM] oops - checked in the wrong set of files for EndPoint initialization; this commits fixes commit 2951 (ipoib_endpt_create() needs p_port passed in).
Leonid Kelly [Mon, 27 Sep 2010 19:32:11 +0000 (19:32 +0000)]
[HCA] Prevent stack corruption
In the case where umv_buf::command is FALSE, the else control segment is taken and a stack variable's address is stored by INIT_UDATA, to be written later in the call to alloc_pd. The stack variable then goes out of scope, so the call to alloc_pd could corrupt the stack.
The fix uses the status local variable as temporary storage, as it is unused until after the call to alloc_pd.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@2948 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86
Alex Naslednikov [Tue, 21 Sep 2010 15:15:20 +0000 (15:15 +0000)]
[IPoIB] [IPoIB_NDIS6_CM]
Guids supported by several new vendors can’t be distinguished only by first 2 bytes.
This patch adds 3-rd byte of GUID to the translation table
Alex Naslednikov [Wed, 15 Sep 2010 11:05:13 +0000 (11:05 +0000)]
[IPoIB]
DHCP fix (Linux-Windows interop). The patch caused by the change at Client Identifier (CID) format:
The format of Client Identifier Field (CID) was changed.
Alex Naslednikov [Tue, 14 Sep 2010 09:26:45 +0000 (09:26 +0000)]
[IPoIB]
Removing the patch for the bug when NDIS sends OID_GEN_NETWORK_LAYER_ADDRESSES with the list of new addresses with invalid formatting from IPoIB based on NDIS5.
Leonid Kelly [Tue, 14 Sep 2010 09:21:23 +0000 (09:21 +0000)]
[MLX4] Fix ioremap to use consistent caching attribute
When mapping Blue Flame registers to user-mode, the UAR page is first mapped from I/O space to kernel-mode, then from kernel-mode to user-mode. The mapping from I/O space uses the function ioremap, which is hard coded to use MmNonCached as the caching attribute. The subsequent mapping to user-mode specifies MmWriteCombined. On Windows Server 2008 R2, the memory manager catches the inconsistency and preserves the original MmNonCached attribute. This leads to a 200-400% regression in small message latencies due to not write combining when writing the request to the blue flame register.
The following patch adds a caching type as a parameter to ioremap, changes all previous callers to specify MmNonCached except in __map_memory_for_user, which already took a caching type, in which case it forwards the caching type to ioremap.
With this patch, small message latency is identical on Windows Server 2008 and Windows Server 2008 R2.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@2921 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86
Sean Hefty [Thu, 9 Sep 2010 16:58:48 +0000 (16:58 +0000)]
winverbs: use export/import function appropriately
Winverbs defines WvGetObject that users must invoke to obtain the winverb provider interface. WvGetObject is defined in the header files as dllexport, but callers require dllimport. The winverbs sources file already defines EXPORT_WV_SYMBOLS that is intended to distinguish if we are really trying to export or import WvGetObject. Update winverbs.h to support dllimport for clients including
winverbs directly.
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@2905 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86
Sean Hefty [Thu, 9 Sep 2010 16:48:44 +0000 (16:48 +0000)]
winmad: check return value of read/writefile
When performing synchronous operation, we need to check the return value of ReadFile/WriteFile before calling GetOverlappedResult. Otherwise GetOverlappedResult can hang.
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@2904 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86
Stan Smith [Wed, 8 Sep 2010 23:14:12 +0000 (23:14 +0000)]
[WIX] install DAPL 32-bit binaries in SysWow64 on 64-bit systems.
Install DAPL UCM (Unreliable Datagram Connection Manager) as part of DAPL runtime package.
Tzachi Dar [Mon, 6 Sep 2010 15:21:18 +0000 (15:21 +0000)]
[IBBUS] fix BSOD during WHQL's "Pnpdtest with concurrent IO in parallel with DevPathExer" (mlnx 5186)
This test runs in parallel 3 tests: pnpdtest, pwrtest and devpathexer.
pwrtest unload/load the driver while pnpdtest send various requests.
BSOD was caused by Device Query Location PnP request to IpoIB PDO, which crashed, because bus_port_mgr has not yet managed acquire HCA.
Sean Hefty [Thu, 2 Sep 2010 18:48:33 +0000 (18:48 +0000)]
winmad: clear overlapped structures
Currently winmad does not support byte offset reads and writes. However, if we ever want to support that feature, than we need to specify an offset of 0 for current operations to avoid backwards compatibility issues.
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@2893 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86
Sean Hefty [Wed, 1 Sep 2010 21:15:13 +0000 (21:15 +0000)]
dapl: change ib_addr to rdma_ib_addr
The librdmacm changed the name of struct ib_addr to struct rdma_ib_addr. Update dapl to use the new name. This fixes a build issue if DAPL_DBG is enabled.
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@2885 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86
Tzachi Dar [Mon, 30 Aug 2010 12:30:19 +0000 (12:30 +0000)]
[ipoib] ipoib - recv processing takes too much time in DPC
When processing of receive packet, the function stays in DPC too much time. In win2008 the OS throws an assert warning that too much time is spent in DPC and it may affect the system.
The fix is to move the receive processing to a workitem. The IPOIB give-up after some time and return to process receive packet in workitem. that allows other DPCs and workitems too run in parallel.
commit 6315 in svn://mtls50/svn.wininf/branches/MLNX_WinOF-2_1_2
Stan Smith [Thu, 26 Aug 2010 22:22:58 +0000 (22:22 +0000)]
[IPOIB,IPOIB_NDIS6_CM]
Fixing the bug when NDIS sends OID_GEN_NETWORK_LAYER_ADDRESSES with the list of new addresses with invalid formatting (happened when AddressCount =5)
NDIS sends NETWORK_ADDRESS_LIST structure, which contains an array of NETWORK_ADDRESS structures of variable size. The calculation of the next address offset is based on AddressLength; in a case when this field contains wrong data, one can get access violation error
Signed-off by: Alexander Naslednikov (xalex at mellanox.co.il)