]> git.openfabrics.org - ~shefty/rdma-win.git/log
~shefty/rdma-win.git
16 years ago[mlx4] Use t-first interrupts by default. (mlnx: 2836)
tzachid [Tue, 22 Jul 2008 06:30:21 +0000 (06:30 +0000)]
[mlx4] Use t-first interrupts by default. (mlnx: 2836)

git-svn-id: svn://openib.tc.cornell.edu/gen1@1429 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[DAPL] Fully support dat_cr_accept() private data.
stansmith [Mon, 21 Jul 2008 23:15:27 +0000 (23:15 +0000)]
[DAPL] Fully support dat_cr_accept() private data.
  dapl/common/dapl_adapter_util.h
  dapl/common/dapl_cr_accept.c
  dapl/ibal/dapl_ibal_cm.c

git-svn-id: svn://openib.tc.cornell.edu/gen1@1428 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: fix patch description
shefty [Mon, 21 Jul 2008 16:43:46 +0000 (16:43 +0000)]
winverbs: fix patch description

git-svn-id: svn://openib.tc.cornell.edu/gen1@1427 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[mlx4] Fix bug in win64 doorbell. (mlnx: 2777, 2791)
tzachid [Mon, 21 Jul 2008 12:37:02 +0000 (12:37 +0000)]
[mlx4] Fix bug in win64 doorbell. (mlnx: 2777, 2791)
Due the bug always the code acquire the spin lock although we run on 64 bits machine

git-svn-id: svn://openib.tc.cornell.edu/gen1@1426 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[mlx4] Add support for 6368 device.
tzachid [Mon, 21 Jul 2008 12:16:10 +0000 (12:16 +0000)]
[mlx4] Add support for 6368 device.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1425 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[HW, TOOLS] Improve VSTAT output in case of a driver startup failure. [MLNX: 2819]
leonidk [Mon, 21 Jul 2008 10:57:08 +0000 (10:57 +0000)]
[HW, TOOLS] Improve VSTAT output in case of a driver startup failure. [MLNX: 2819]

When low level drivers fail on startup, which usually happens upon an incorrect FW, they report to all the above stack a dev_id of the burning device ("livefish") and imitate such a device thereafter. It was done in order to allow to all the upper level drivers to start their work.
VSTAT shows in this case the dev_id of a "livefish", which is a bit misleading.

This patch fixes this behavior. VSTAT will now show the real dev_id. The drivers  still imitate the "livefish" device. The detailed message about the startup failure can be found in System Event Log (as it always was).

git-svn-id: svn://openib.tc.cornell.edu/gen1@1424 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[MLX4] added a possibility to register event handler with MLX4_BUS driver. [MLNX...
leonidk [Mon, 21 Jul 2008 10:36:38 +0000 (10:36 +0000)]
[MLX4] added a possibility to register event handler with MLX4_BUS driver. [MLNX:2786]

It is an extension of the Ethernet interface of mlx4_bus driver.
The mlx4_eth handler is called on DPC level upon asynchronous events like PORT_UP/PORT_DOWN, passing event data and the callback context parameter, set upon registration.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1423 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[HW, TOOLS] fixed a bug, causing incorrect value of max_addr_handles in query_ca...
leonidk [Mon, 21 Jul 2008 10:26:12 +0000 (10:26 +0000)]
[HW, TOOLS] fixed a bug, causing incorrect value of max_addr_handles in query_ca. [MLNX: 2790]

It is relevant only for Tavor, but the changes influence all drivers and modify ABI, so the AL_IOCTL_VERSION has been increased.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1422 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs/libibverbs: update to support UD QPs and async events
shefty [Sat, 19 Jul 2008 04:31:58 +0000 (04:31 +0000)]
winverbs/libibverbs: update to support UD QPs and async events

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1421 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agouvp/av: change create/modify calls to take SGID index
shefty [Sat, 19 Jul 2008 04:29:38 +0000 (04:29 +0000)]
uvp/av: change create/modify calls to take SGID index

The uvp requires the SGID index to create/modify address handles.
Modify the API and UVPs to take the SGID index as input.  This avoids
the UVP needing to cache the CA attributes, which can lead to accessing
a stale GID table.  The SGID index is passed into the UVP through the
resv1 field of the GRH.

This adds the patch to make this change.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1420 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] buildrelease no longer contains uglt hack to work around XP32 WSD build problems.
stansmith [Fri, 18 Jul 2008 23:36:48 +0000 (23:36 +0000)]
[WinOF] buildrelease no longer contains uglt hack to work around XP32 WSD build problems.
Added a 2nd cmd line arg to set OPENIB_REV value when building installers. Fix eliminates folder structure dependency, making the script more useful to a wider audience.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1419 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[DAPL2] DAPL2 debug cleanup, along with patches to IBAL provider to correctly handle...
stansmith [Fri, 18 Jul 2008 23:33:50 +0000 (23:33 +0000)]
[DAPL2] DAPL2 debug cleanup, along with patches to IBAL provider to correctly handle accept side private_data.
Fixed the async QP & CQ error handlers as they had not been updated with latest typedef's (ib_async_qp_handler_t & ib_async_cq_handler_t), hence calling arg mismatch vs. handling definitions. Resulted in bad EP pointer dereference during Async QP error handling.
Added debug value DAPL_DBG_EVD_DEQUEUE to throttle debug output when watching EVD dequeue operations.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1418 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: use resv1 field of grh instead of resv2
shefty [Fri, 18 Jul 2008 09:45:41 +0000 (09:45 +0000)]
winverbs: use resv1 field of grh instead of resv2

Use resv1 field to allow for more GIDs assigned to a single node.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1417 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: pass in SGID index to uvp pre_create_av
shefty [Fri, 18 Jul 2008 08:49:04 +0000 (08:49 +0000)]
winverbs: pass in SGID index to uvp pre_create_av

The SGID index can change dynamically, so look up the correct index when creating an address vector.  The index is passed into the UVP in the resv2 field of the grh.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1416 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinmad: add NET* data types to indicate values stored in network-byte order
shefty [Fri, 18 Jul 2008 00:27:20 +0000 (00:27 +0000)]
winmad: add NET* data types to indicate values stored in network-byte order

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1415 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] Don't build WSD for WXP32
stansmith [Fri, 18 Jul 2008 00:22:47 +0000 (00:22 +0000)]
[WinOF] Don't build WSD for WXP32
  tools\wsdinstall\user\makefile
  tools\ulp\wsd\user\makefile

git-svn-id: svn://openib.tc.cornell.edu/gen1@1414 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] added support for mthca.inf from trunk\bin\kernel\xxx
stansmith [Fri, 18 Jul 2008 00:19:39 +0000 (00:19 +0000)]
[WinOF] added support for mthca.inf from trunk\bin\kernel\xxx

git-svn-id: svn://openib.tc.cornell.edu/gen1@1413 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[MTHCA] mthca.inf file stamping support.
stansmith [Fri, 18 Jul 2008 00:17:11 +0000 (00:17 +0000)]
[MTHCA] mthca.inf file stamping support.
rename mthca.inf --> mthca.inx
added makefile.inc

git-svn-id: svn://openib.tc.cornell.edu/gen1@1412 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: define NET* data types to indicate data is in network byte order
shefty [Thu, 17 Jul 2008 23:58:40 +0000 (23:58 +0000)]
winverbs: define NET* data types to indicate data is in network byte order

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1411 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: fix kernel crash resulting from tracking port events
shefty [Thu, 17 Jul 2008 22:47:45 +0000 (22:47 +0000)]
winverbs: fix kernel crash resulting from tracking port events

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1410 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: change WV_GRH structure to simplify the interface
shefty [Thu, 17 Jul 2008 22:46:49 +0000 (22:46 +0000)]
winverbs: change WV_GRH structure to simplify the interface

Separate out the bit fields in the WV_GRH structure to make using it easier to use.  Change the structure name to avoid confusion with an actual IB GRH.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1409 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] This patch fixes the build error due to CSQ use for XP builds.
leonidk [Thu, 17 Jul 2008 08:16:01 +0000 (08:16 +0000)]
[IBAL] This patch fixes the build error due to CSQ use for XP builds.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1408 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: update to account for changes to ci_umv_buf
shefty [Thu, 17 Jul 2008 06:28:11 +0000 (06:28 +0000)]
winverbs: update to account for changes to ci_umv_buf

p_inout_buf was changed from void * to uint64_t

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1407 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: update align wr patch to account for updating to svn 1400
shefty [Thu, 17 Jul 2008 06:25:29 +0000 (06:25 +0000)]
winverbs: update align wr patch to account for updating to svn 1400

git-svn-id: svn://openib.tc.cornell.edu/gen1@1406 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: updated patches based on svn rev 1400
shefty [Thu, 17 Jul 2008 05:11:48 +0000 (05:11 +0000)]
winverbs: updated patches based on svn rev 1400

Patches apply, but build fails.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1405 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] for XP32 builds, place holder files (until someone comes up with a better...
stansmith [Thu, 17 Jul 2008 01:08:45 +0000 (01:08 +0000)]
[WinOF] for XP32 builds, place holder files (until someone comes up with a better plan) utilized by makebin to cover the case of WSD not available for XP32. netipoib-xp32.inf intentionally contains 64 bit sections as to minimize differences between it and netipoib.inf file.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1404 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] updated for .inf file stamping & .inf file relocation to trunk\bin path
stansmith [Thu, 17 Jul 2008 01:05:08 +0000 (01:05 +0000)]
[WinOF] updated for .inf file stamping & .inf file relocation to trunk\bin path

git-svn-id: svn://openib.tc.cornell.edu/gen1@1403 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] updated to discuss WDK build and WinOF/makebin/buildrelease structures
stansmith [Thu, 17 Jul 2008 01:03:01 +0000 (01:03 +0000)]
[WinOF] updated to discuss WDK build and WinOF/makebin/buildrelease structures

git-svn-id: svn://openib.tc.cornell.edu/gen1@1402 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: updated to trunk svn rev 1400
shefty [Wed, 16 Jul 2008 23:18:35 +0000 (23:18 +0000)]
winverbs: updated to trunk svn rev 1400

git-svn-id: svn://openib.tc.cornell.edu/gen1@1401 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agoCI: add support for multiple event handlers
shefty [Wed, 16 Jul 2008 22:41:11 +0000 (22:41 +0000)]
CI: add support for multiple event handlers

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1400 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agolibibverbs: add port of ibv_asyncwatch sample program
shefty [Wed, 16 Jul 2008 22:37:04 +0000 (22:37 +0000)]
libibverbs: add port of ibv_asyncwatch sample program

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1399 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinmad: switch reserved and grh valid fields
shefty [Wed, 16 Jul 2008 22:02:35 +0000 (22:02 +0000)]
winmad: switch reserved and grh valid fields

Switch the reserved field to the 16 bit field, rather than the 8 bit field.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1398 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: add asynchronous event reporting
shefty [Wed, 16 Jul 2008 22:00:40 +0000 (22:00 +0000)]
winverbs: add asynchronous event reporting

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1397 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[DAPL2] updated old license header text to be consistent with OFA BSD license; 1st...
stansmith [Tue, 15 Jul 2008 15:06:51 +0000 (15:06 +0000)]
[DAPL2] updated old license header text to be consistent with OFA BSD license; 1st commit was mislabeled [DAPL2] should have been [DAPL].

git-svn-id: svn://openib.tc.cornell.edu/gen1@1396 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[DAPL2] updated old license header text to be consistent with OFA BSD license.
stansmith [Tue, 15 Jul 2008 15:04:52 +0000 (15:04 +0000)]
[DAPL2] updated old license header text to be consistent with OFA BSD license.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1395 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[DAPL] fix x86(32-bit) pointer sign extension warning when going to wr_id (u64).
stansmith [Sun, 13 Jul 2008 22:26:58 +0000 (22:26 +0000)]
[DAPL] fix x86(32-bit) pointer sign extension warning when going to wr_id (u64).

git-svn-id: svn://openib.tc.cornell.edu/gen1@1394 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Limit time spent at DISPATCH_LEVEL when processing MADs.
leonidk [Sun, 13 Jul 2008 11:35:53 +0000 (11:35 +0000)]
[IBAL] Limit time spent at DISPATCH_LEVEL when processing MADs.

In working with some switch SMs, I found that under stress the QP0 MAD processing could get delayed by eternal QP1 MAD processing (from hitting the SA for path queries).  This caused the SMs to remove the node from the fabric (multicast group membership, etc) because it appeared unreachable.

This patch adds a DPC for QP0 and QP1 to the SMI, and limits the SMI to processing 16 MADs before re-queueing the DPC to the DPC queue.

Because QP0 processing is crucial to the fabric operating properly, the QP0 DPC is set to high importance so that it always gets queued to the front of the DPC queue, pre-empting any QP1 processing (among other things).

In any case, with this patch all my changes have now been mailed to the list.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1393 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[ALL] Enable warning C4826.
leonidk [Sun, 13 Jul 2008 11:31:46 +0000 (11:31 +0000)]
[ALL]  Enable warning C4826.

Warning C4826 warns you if you have signed pointer extension when a 32-bit pointer is extended to 64-bits.  This patch turns the warning on by default (for any users of complib), and fixes all instances of problematic code.  It also eradicates __ptr64 usage from the Qlogic VNIC driver.

Code affected:
- IBAL
- MTHCA
- MLX4
- QLGCVNIC

Note that I didn't change DAPL because it's licensed under the CPL and not BSD. So someone else will have to fix that.  In fact, DAPL should probably just go back into the SourceForge project rather than being duplicated everywhere.  Code in the WinOF SVN should be BSD only according to the contributor's agreement.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1392 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Refine UAL_NDI_NOOP handler.
leonidk [Sun, 13 Jul 2008 11:24:55 +0000 (11:24 +0000)]
[IBAL] Refine UAL_NDI_NOOP handler.

The UAL_NDI_NOOP IOCTL handler was added to allow memory registration in user-mode to notify a client using an I/O completion port.  This patch extends the functionality to allow the IOCTL to return either STATUS_SUCCESS or STATUS_TIMEOUT.  The STATUS_TIMEOUT facility is used by the NetworkDirect provider when IBAT returns pending.  It's crude, but gets the job done.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1391 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Fix TO_LONG_PTR use in IOCTLs. Re-applied 1387 patch.
leonidk [Sun, 13 Jul 2008 11:19:40 +0000 (11:19 +0000)]
[IBAL] Fix TO_LONG_PTR use in IOCTLs. Re-applied 1387 patch.

Some IOCTLs transfer API structures with embedded pointers.  These embedded pointers use the TO_LONG_PTR macro to pad everything out so that __ptr64 isn't used.  The idea here is fine, but the change to eliminate the __ptr64 was riddled with problems that weren't caught by the find/replace brute force code changes.

Specifically, you had code like this:

>core\al\user\ual_mr.c, ual_reg_mem@67
>
>       /* Clear the mr_ioctl */
>       cl_memclr( &mr_ioctl, sizeof(mr_ioctl) );

In theory, no uninitialized upper 32-bits of a TO_LONG_PTR structure would get sent to the kernel.

>       mr_ioctl.in.h_pd = h_pd->obj.hdl;
>       mr_ioctl.in.mem_create = *p_mr_create;

Oops, the mem_create in the IOCTL buffer was overwritten with the caller's structure, which may have uninitialized padding.  This isn't subsequently cleared, effectively defeating the purpose of the memclr.

>+      mr_ioctl.in.mem_create.vaddr_padding =
>+ (ULONG_PTR)p_mr_create->vaddr;

Pretty much every instance of embedded structures in IOCTLs was broken in this way.  There were cases where things were closer to being right:

>core\al\user\ual_qp.c, ual_create_qp@313
>        */
>       qp_ioctl.in.h_pd = h_pd->obj.hdl;
>       qp_ioctl.in.qp_create = *p_qp_create;

Ok, same copy issue as above...

>       qp_ioctl.in.qp_create.h_rq_cq =
>               (ib_cq_handle_t)HDL_TO_PTR(p_qp_create->h_rq_cq->obj.hdl);
>       qp_ioctl.in.qp_create.h_sq_cq =
>
> (ib_cq_handle_t)HDL_TO_PTR(p_qp_create->h_sq_cq->obj.hdl);

Ah, close but not quite - you have the assignment, but it only assigns the pointer part of the TO_LONG_PTR union.  The padding is still a copy of the user's structure, potentially giving an invalid handle in the kernel.  All uses of HDL_TO_PTR were eliminated as they didn't actually accomplish anything.

This patch fixes this, and always uses the 'padding' field of the TO_LONG_PTR union so that the value is always fully set.

There's also a bug fixed in UD work requests that get sent via IOCTL - the AV handle was never swizzled to its appropriate kernel handle.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1390 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Remove TO_LONG_PTR from IOCTL structures. Re-applied 1386 patch with out SMI...
leonidk [Sun, 13 Jul 2008 11:12:55 +0000 (11:12 +0000)]
[IBAL] Remove TO_LONG_PTR from IOCTL structures. Re-applied 1386 patch with out SMI changes.

This patch removes all instances of TO_LONG_PTR from internal IOCTL structures.  The only place TO_LONG_PTR should be used is in public structures that contain pointers and are exchanged between user-mode and kernel-mode.  Actually, the code should ideally have proxy structures for such API structures into which API structure members
are copied member-wise, and whose size is fixed.  Unused pointers should be stripped from the IOCTL proxy structures.  But that's a change for some other time...

All fields in internal IOCTL structures that were formerly TO_LONG_PTR are not uint64_t, and all uses have appropriate casts.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1389 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] revert two previous patches
leonidk [Sun, 13 Jul 2008 11:08:58 +0000 (11:08 +0000)]
[IBAL] revert two previous patches

git-svn-id: svn://openib.tc.cornell.edu/gen1@1388 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Fix TO_LONG_PTR use in IOCTLs.
leonidk [Sun, 13 Jul 2008 10:54:52 +0000 (10:54 +0000)]
[IBAL] Fix TO_LONG_PTR use in IOCTLs.

Some IOCTLs transfer API structures with embedded pointers.  These embedded pointers use the TO_LONG_PTR macro to pad everything out so that __ptr64 isn't used.  The idea here is fine, but the change to eliminate the __ptr64 was riddled with problems that weren't caught by the find/replace brute force code changes.

Specifically, you had code like this:

>core\al\user\ual_mr.c, ual_reg_mem@67
>
>       /* Clear the mr_ioctl */
>       cl_memclr( &mr_ioctl, sizeof(mr_ioctl) );

In theory, no uninitialized upper 32-bits of a TO_LONG_PTR structure would get sent to the kernel.

>       mr_ioctl.in.h_pd = h_pd->obj.hdl;
>       mr_ioctl.in.mem_create = *p_mr_create;

Oops, the mem_create in the IOCTL buffer was overwritten with the caller's structure, which may have uninitialized padding.  This isn't subsequently cleared, effectively defeating the purpose of the memclr.

>+      mr_ioctl.in.mem_create.vaddr_padding =
>+ (ULONG_PTR)p_mr_create->vaddr;

Pretty much every instance of embedded structures in IOCTLs was broken in this way.  There were cases where things were closer to being right:

>core\al\user\ual_qp.c, ual_create_qp@313
>        */
>       qp_ioctl.in.h_pd = h_pd->obj.hdl;
>       qp_ioctl.in.qp_create = *p_qp_create;

Ok, same copy issue as above...

>       qp_ioctl.in.qp_create.h_rq_cq =
>               (ib_cq_handle_t)HDL_TO_PTR(p_qp_create->h_rq_cq->obj.hdl);
>       qp_ioctl.in.qp_create.h_sq_cq =
>
> (ib_cq_handle_t)HDL_TO_PTR(p_qp_create->h_sq_cq->obj.hdl);

Ah, close but not quite - you have the assignment, but it only assigns the pointer part of the TO_LONG_PTR union.  The padding is still a copy of the user's structure, potentially giving an invalid handle in the kernel.  All uses of HDL_TO_PTR were eliminated as they didn't actually accomplish anything.

This patch fixes this, and always uses the 'padding' field of the TO_LONG_PTR union so that the value is always fully set.

There's also a bug fixed in UD work requests that get sent via IOCTL - the AV handle was never swizzled to its appropriate kernel handle.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1387 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Remove TO_LONG_PTR from IOCTL structures.
leonidk [Sun, 13 Jul 2008 10:51:31 +0000 (10:51 +0000)]
[IBAL] Remove TO_LONG_PTR from IOCTL structures.

This patch removes all instances of TO_LONG_PTR from internal IOCTL structures.  The only place TO_LONG_PTR should be used is in public structures that contain pointers and are exchanged between user-mode and kernel-mode.  Actually, the code should ideally have proxy structures for such API structures into which API structure members
are copied member-wise, and whose size is fixed.  Unused pointers should be stripped from the IOCTL proxy structures.  But that's a change for some other time...

All fields in internal IOCTL structures that were formerly TO_LONG_PTR are not uint64_t, and all uses have appropriate casts.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1386 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Remove PD context from IOCTLs.
leonidk [Sun, 13 Jul 2008 10:47:12 +0000 (10:47 +0000)]
[IBAL] Remove PD context from IOCTLs.
IBAL's ib_query_qp and ib_query_mw IOCTLs return the PD context in the output IOCTL buffer.  It is however never referenced.

This patch removes the fields (which had been changed to TO_LONG_PTR).

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1385 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL, HW] Remove pointers from ci_umv_buf_t.
leonidk [Sun, 13 Jul 2008 10:43:22 +0000 (10:43 +0000)]
[IBAL, HW]  Remove pointers from ci_umv_buf_t.

Part of cleaning up the __ptr64 stuff properly - rather than use the TO_LONG_PTR in the ci_umv_buf_t structure, use uint64_t.

The problem with using TO_LONG_PTR in structures that are exchanged between 32-bit clients and 64-bit drivers is that care must be taken to ensure that the upper 'padding' bytes are cleared properly.

Making the field a uint64_t makes it fool proof (though it does require casting, but at least the compiler will trap errors unlike for the padding.)

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1384 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[INC] Clean up TO_LONG_PTR use in ib_types.h.
leonidk [Sun, 13 Jul 2008 10:39:47 +0000 (10:39 +0000)]
[INC]  Clean up TO_LONG_PTR use in ib_types.h.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1383 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[INC] Remove STRUCT_PTR64.
leonidk [Sun, 13 Jul 2008 10:34:29 +0000 (10:34 +0000)]
[INC]  Remove STRUCT_PTR64.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1382 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[INC] Remove TYPEDEF_PTR64.
leonidk [Sun, 13 Jul 2008 10:31:12 +0000 (10:31 +0000)]
[INC]  Remove TYPEDEF_PTR64.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1381 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL, HW, IPOIB] Remove VOID_PTR64.
leonidk [Sun, 13 Jul 2008 10:28:11 +0000 (10:28 +0000)]
[IBAL, HW, IPOIB] Remove VOID_PTR64.
Also fixed GPL license and missing copyright issues.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1380 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[HW] Remove FUNC_PTR64.
leonidk [Sun, 13 Jul 2008 10:24:27 +0000 (10:24 +0000)]
[HW] Remove FUNC_PTR64.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1379 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[COMPLIB] This patch removes a useless comment.
leonidk [Sun, 13 Jul 2008 10:20:55 +0000 (10:20 +0000)]
[COMPLIB] This patch removes a useless comment.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1378 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[MTHCA] This patch cleans up the atomic_set function in the HCA drivers.
leonidk [Sun, 13 Jul 2008 10:16:17 +0000 (10:16 +0000)]
[MTHCA] This patch cleans up the atomic_set function in the HCA drivers.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1377 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Cleanup ND reject IOCTL handling.
leonidk [Sun, 13 Jul 2008 09:10:39 +0000 (09:10 +0000)]
[IBAL] Cleanup ND reject IOCTL handling.
This patch removes a local variable, and changes the reject reason from IB_REJ_INSUF_QP to IB_REJ_USER_DEFINED.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1376 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[OPENMS] This patch removes XXX_PTR64 and TO_ULONG_PTR from OpenSM.
leonidk [Sun, 13 Jul 2008 08:55:53 +0000 (08:55 +0000)]
[OPENMS] This patch removes XXX_PTR64 and TO_ULONG_PTR from OpenSM.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1375 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Change CEP DREP API
leonidk [Sun, 13 Jul 2008 08:52:24 +0000 (08:52 +0000)]
[IBAL] Change CEP DREP API

The al_cep_drep API currently takes the ib_cm_drep_t structure.  This structure is passed in the IOCTL.  It has en embedded pointer that isn't used since the private data is copied into the IOCTL structure.

This patch removes the ib_cm_drep_t structure from the IOCTL structure, and passes the private data buffer and length in explicitly.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1374 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[TOOLS] This patch cleans up the includes for the HCA co-installer and corrects the...
leonidk [Sun, 13 Jul 2008 08:29:42 +0000 (08:29 +0000)]
[TOOLS] This patch cleans up the includes for the HCA co-installer and corrects the version information to correctly identify the DLL as such (rather than as an executable).
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1373 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[CORE, ULP] fix file version fields. [MLNX: 2748]
leonidk [Sun, 13 Jul 2008 08:19:26 +0000 (08:19 +0000)]
[CORE, ULP] fix file version fields. [MLNX: 2748]
Signed-off-by: Reuven Amitai <reuven@mellanox.co.il>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1372 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] added clean option, clearer usage test, cleanup.
stansmith [Fri, 11 Jul 2008 19:08:03 +0000 (19:08 +0000)]
[WinOF] added clean option, clearer usage test, cleanup.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1371 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[DAPL2] synchronize with OFED 1.4 DAT/DAPL code base.
stansmith [Fri, 11 Jul 2008 19:05:54 +0000 (19:05 +0000)]
[DAPL2] synchronize with OFED 1.4 DAT/DAPL code base.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1370 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agoFix typo in comment
shefty [Fri, 11 Jul 2008 17:35:11 +0000 (17:35 +0000)]
Fix typo in comment

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1369 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agoAdd missing copyright.
ftillier [Fri, 11 Jul 2008 16:00:48 +0000 (16:00 +0000)]
Add missing copyright.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1368 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agoAdd missing copyright.
ftillier [Fri, 11 Jul 2008 15:59:03 +0000 (15:59 +0000)]
Add missing copyright.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1367 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[mlx4] move eq definitions to a common header file
tzachid [Thu, 10 Jul 2008 08:07:28 +0000 (08:07 +0000)]
[mlx4]  move eq definitions to a common header file

git-svn-id: svn://openib.tc.cornell.edu/gen1@1366 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[ipoib] Fix maximum mtu to be 4092.
tzachid [Thu, 10 Jul 2008 08:04:08 +0000 (08:04 +0000)]
[ipoib] Fix maximum mtu to be 4092.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1365 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[ipoib] fix DHCP client id insertion.
tzachid [Thu, 10 Jul 2008 07:51:20 +0000 (07:51 +0000)]
[ipoib] fix DHCP client id insertion.
singed by: anatolyg@voltaire.com

git-svn-id: svn://openib.tc.cornell.edu/gen1@1364 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[ALL] Remove listen error callback
leonidk [Wed, 9 Jul 2008 17:19:12 +0000 (17:19 +0000)]
[ALL] Remove listen error callback

The listen error callback is the vestigial tail of IBAL...  At some point in the distant past, it served a function, though a dubious one at best given the implementation of the listen error callbacks in client code that all effectively generate some output but really ignore the event.

This patch eliminates the listen error callback, its associated callback record, and all the no-op handlers in the various clients.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1363 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[MLX4] fix a bug, causing successful registration of RO memory for write access
leonidk [Wed, 9 Jul 2008 15:43:13 +0000 (15:43 +0000)]
[MLX4] fix a bug, causing successful registration of RO memory for write access

git-svn-id: svn://openib.tc.cornell.edu/gen1@1362 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[MTHCA] Enable creating zero-sized QPs
leonidk [Wed, 9 Jul 2008 15:39:26 +0000 (15:39 +0000)]
[MTHCA] Enable creating zero-sized QPs

git-svn-id: svn://openib.tc.cornell.edu/gen1@1361 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Driver verifier caught this one. If an IRP is completed via IoCompletRequest...
leonidk [Wed, 9 Jul 2008 12:27:24 +0000 (12:27 +0000)]
[IBAL] Driver verifier caught this one.  If an IRP is completed via IoCompletRequest the IRP dispatch routine needs to return the same status as the IRP's completion status.  There's no reason to use the CL_COMPLETED value here anyway (and it should probably be eliminated to prevent exactly this type of issue.)
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1360 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agoThis patch fixes a bug in the ND proxy where an IOCTL handler would return STATUS_PEN...
leonidk [Wed, 9 Jul 2008 12:22:38 +0000 (12:22 +0000)]
This patch fixes a bug in the ND proxy where an IOCTL handler would return STATUS_PENDING without marking the IRP pending.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1359 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agoThis patch adds a missing call to destroy a QP's associated CEP if a ND-related CM...
leonidk [Wed, 9 Jul 2008 12:18:47 +0000 (12:18 +0000)]
This patch adds a missing call to destroy a QP's associated CEP if a ND-related CM REQ times out or fails for any reason.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1358 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] This patch removes ATS queries from the ND proxy, with the anticipation that...
leonidk [Wed, 9 Jul 2008 12:15:02 +0000 (12:15 +0000)]
[IBAL] This patch removes ATS queries from the ND proxy, with the anticipation that all address translation will be done by the caller (via the IBAT library).
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1357 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] Fix CEP destruction.
leonidk [Wed, 9 Jul 2008 10:39:14 +0000 (10:39 +0000)]
[IBAL] Fix CEP destruction.

In my previous patch "Fix race reading/setting connection ID" I incorrectly stated that the patch changed the semantics of creation/destruction of the CEPs by providing the destroy callback at CEP creation time.  It didn't, but this patch does.

Note that it also backs out the "Cleanup CEPs after child objects have been destroyed" changes, as those actually introduced the following issue:

UM listen CEPs are not tracked in AL's handle table, but can queue MADs which take a reference on the AL instance.  AL's destroying callback must cleanup the CEPs to free the MADs in order for the ref count to reach zero.

The root problem, and the iterations of the fix that are apparent in the patch sequence has to do with race conditions cleaning up QPs while CM messages are being received and processed.  First there was the issue of the CID stored in the QP having two reserved states and races checking/assigning this value.  This was fixed (successfully) by pushing checks into the CEP manager, protected by the CEP manager's spinlock.  Next was the issue that a reference on the QP is taken when the CEP is bound to a QP, but if AL was destroyed the CEP cleanup in AL would blow away the CEPs before the QPs were done being destroyed.  This would leak a reference count on the QP since the CEP was destroyed without a destroy callback.  The change that added a cleanup callback to AL was the first (failed) attempt to fix this (for the reasons listed above).  This patch is the successful attempt to fix this, as it sets the destroy callback at creation time.  No matter what path destroys the CEP, if a destroy callback was taken (because some object has a reference for the CEP), the destroy callback will always be invoked.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1356 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] This patch fixes ND CM IOCTL handling to work properly at scale. There were...
leonidk [Wed, 9 Jul 2008 10:26:28 +0000 (10:26 +0000)]
[IBAL] This patch fixes ND CM IOCTL handling to work properly at scale.  There were several race conditions in the old code.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1355 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[MLX4] fixed incorrect mlx4\kernel\bus\ib module initialization, which caused BSOD...
leonidk [Wed, 9 Jul 2008 10:25:19 +0000 (10:25 +0000)]
[MLX4] fixed incorrect mlx4\kernel\bus\ib module initialization, which caused BSOD upon disabling second HCA

git-svn-id: svn://openib.tc.cornell.edu/gen1@1354 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[mlx4] allow mlx4 users to add extra eqs for their internal use.
tzachid [Wed, 9 Jul 2008 09:07:25 +0000 (09:07 +0000)]
[mlx4] allow mlx4 users to add extra eqs for their internal use.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1353 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[mlx4] Fix WPP for mlx4 part one
tzachid [Wed, 9 Jul 2008 07:24:53 +0000 (07:24 +0000)]
[mlx4] Fix WPP for mlx4 part one

git-svn-id: svn://openib.tc.cornell.edu/gen1@1352 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WSD] Fix printing on error.
tzachid [Wed, 9 Jul 2008 07:15:46 +0000 (07:15 +0000)]
[WSD] Fix printing on error.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1351 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] use nul device for output
stansmith [Tue, 8 Jul 2008 18:58:45 +0000 (18:58 +0000)]
[WinOF] use nul device for output

git-svn-id: svn://openib.tc.cornell.edu/gen1@1350 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WinOF] Cleanup confusion on signed driver files; only .cat required for install.
stansmith [Tue, 8 Jul 2008 18:24:29 +0000 (18:24 +0000)]
[WinOF] Cleanup confusion on signed driver files; only .cat required for install.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1349 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[DAPL2] added requirement and code to enforce using delayed env. var expansion. Used...
stansmith [Tue, 8 Jul 2008 18:21:32 +0000 (18:21 +0000)]
[DAPL2] added requirement and code to enforce using delayed env. var expansion. Used to config EP tests: threads & EPs.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1348 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[SRP] added INX -> INF file version stamping.
stansmith [Tue, 8 Jul 2008 18:19:10 +0000 (18:19 +0000)]
[SRP] added INX -> INF file version stamping.
INF file created in ..\..\..\bin\kernel\xxx\
.inf file version now matches .sys file version.
added makefile.inc
ib_srp.inf renamed to ib_srp.inx per MS/WDK convention.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1347 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IPOIB] added INX -> INF file version stamping.
stansmith [Tue, 8 Jul 2008 18:17:07 +0000 (18:17 +0000)]
[IPOIB] added INX -> INF file version stamping.
INF file created in ..\..\..\bin\kernel\xxx
.inf file version now matches .sys file version.
added makefile.inc
netipoib.inf renamed to netipoib.inx per MS/WDK convention.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1346 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBBUS] Removed extra MS example baggage MISCFILES
stansmith [Tue, 8 Jul 2008 18:10:43 +0000 (18:10 +0000)]
[IBBUS] Removed extra MS example baggage MISCFILES

git-svn-id: svn://openib.tc.cornell.edu/gen1@1345 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[VNIC] Removed extra MS example baggage MISCFILES
stansmith [Tue, 8 Jul 2008 18:09:41 +0000 (18:09 +0000)]
[VNIC] Removed extra MS example baggage MISCFILES

git-svn-id: svn://openib.tc.cornell.edu/gen1@1344 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[ipoib] Add support for another mlnx series of GUIDs.
tzachid [Tue, 8 Jul 2008 14:51:08 +0000 (14:51 +0000)]
[ipoib] Add support for another mlnx series of GUIDs.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1343 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IPOIB, MLX4] Enabling the use of 4K MTU on ipoib.
tzachid [Tue, 8 Jul 2008 14:36:14 +0000 (14:36 +0000)]
[IPOIB, MLX4] Enabling the use of 4K MTU on ipoib.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1342 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[ipoib] Fix for improper handling of IPoIB params
tzachid [Tue, 8 Jul 2008 14:34:09 +0000 (14:34 +0000)]
[ipoib]  Fix for improper handling of IPoIB params
signed by:xalex

git-svn-id: svn://openib.tc.cornell.edu/gen1@1341 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[QLGCVNIC] added INX -> INF file stamping. INF file created in ..\..\..\bin\kernel\xxx
stansmith [Mon, 7 Jul 2008 22:05:30 +0000 (22:05 +0000)]
[QLGCVNIC] added INX -> INF file stamping. INF file created in ..\..\..\bin\kernel\xxx
.inf file version now matches .sys file version.
added file makefile.inc
netvnic.inf renamed to netvnic.inx per MS/WDK convention.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1340 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agofix merge issues updating with trunk
shefty [Mon, 7 Jul 2008 18:51:17 +0000 (18:51 +0000)]
fix merge issues updating with trunk

git-svn-id: svn://openib.tc.cornell.edu/gen1@1339 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBBUS] added INX -> INF file stamping. INF file created in ..\..\..\bin\kernel\xxx
stansmith [Mon, 7 Jul 2008 18:48:02 +0000 (18:48 +0000)]
[IBBUS] added INX -> INF file stamping. INF file created in ..\..\..\bin\kernel\xxx
.inf file version now matches .sys file version.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1338 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[CORE] openib.def now includes mod_ver.def to retrieve IB_MAJORVERSION & IB_MINORVERS...
stansmith [Mon, 7 Jul 2008 18:45:01 +0000 (18:45 +0000)]
[CORE] openib.def now includes mod_ver.def to retrieve IB_MAJORVERSION & IB_MINORVERSION #'s.  INF file stamping prompted this change.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1337 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agoUpdate to trunk svn rev 1332.
shefty [Mon, 7 Jul 2008 17:29:40 +0000 (17:29 +0000)]
Update to trunk svn rev 1332.

git-svn-id: svn://openib.tc.cornell.edu/gen1@1336 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agolibibumad: initial check-in
shefty [Thu, 3 Jul 2008 20:27:24 +0000 (20:27 +0000)]
libibumad: initial check-in

Initial code check-in, just so that the current state of the code is available somewhere.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1335 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: update patch series
shefty [Thu, 3 Jul 2008 20:26:14 +0000 (20:26 +0000)]
winverbs: update patch series

series is missing needed patch already in directory

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1334 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years agowinverbs: update uvp_if patch
shefty [Thu, 3 Jul 2008 20:25:19 +0000 (20:25 +0000)]
winverbs: update uvp_if patch

Add documentation for get interface call by guid.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1333 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[WSD] This patch removes the dependency of WSD on DAPL ATS, and reduces connection...
leonidk [Thu, 3 Jul 2008 08:31:57 +0000 (08:31 +0000)]
[WSD] This patch removes the dependency of WSD on DAPL ATS, and reduces connection establishment SA queries from 2 (ATS query + PR query) to 1 (PR query).
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1332 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[CORE, TESTS] This patch adds a library and test utility that performs IP to IB addre...
leonidk [Thu, 3 Jul 2008 08:22:07 +0000 (08:22 +0000)]
[CORE, TESTS] This patch adds a library and test utility that performs IP to IB address translation without going to the SA for DAPL ATS service records.

It's a sequence of operations between the IP helper library and IPoIB.

1. Get the local IPoIB port's IB address information (GID).
2. Lookup the destination MAC address via the IP Helper functions, send ARP if needed 3. Ask IPoIB for the destination IB address information given the destination Ethernet MAC.

As input, the IBAT library takes two IP addresses (v4 or v6).  As output, it returns two GIDs (as IN6_ADDRs), as well as the pkey.

There's a test program, wherebu, that will exercise the IBAT library.

Note that there is special code for Windows Vista/Server 2008 to take advantage of newer functionality in the IP Helper library.  Without this lookups get quite slow as you increase the number of nodes.  On our 256 node cluster the Windows Server 2008 code path performed an order of magnitude better than the Windows Server 2003 code path.

There will be a follow up patch that moves WSD over to using this library.

Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1331 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

16 years ago[IBAL] fix to 1326 CID management patch.
leonidk [Wed, 2 Jul 2008 18:10:45 +0000 (18:10 +0000)]
[IBAL] fix to 1326 CID management patch.
Signed-off-by: Fab Tillier <ftillier@microsoft.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1330 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86