Update to the connection manager:
- Fixes reference counting issues in user-mode so that CEPs get cleaned
up when IOCTL callbacks unwind.
- Integrated IRP handling from CEP proxy into CEP manager to allow for
proper cleanup when a process exits.
- Eliminated return value from CEP event callback as it serves no purpose.
- Fixed collision in CEP state enum values.
- Fixed providing correct CA GUID when sending REJ due to timeout.
- Fixed delay calculation in MRA processing.
- Fixed freeing MADs when handling REJ.
- Fixed CEP cleanup from send completion.
- Use full CID when performing CEP lookup for incoming MADs.
- Properly trap overflow in calculating MAD timeouts (pkt_life > 39).
- Include CA GUID in REJ issued due to user aborting the connection.
- Fixed locking issue with resuming pended sends that could
result in QP overrun.
- Changed receive processing to silently drop all loopback traffic since
the driver reports itself as needing SW loopback (which is higher performing).
- Fixed bug where code assumed that a success result from the SA implied
non-zero records. Code now checks the number of records in addition to status.
- Fixed initialization to perform PnP registration after flagging the device as
a deserialized miniport with NdisMSetAttributesEx to allow calling
NdisMSetInformation at DISPATCH level. Without this, the driver causes an
assertion in checked versions of NDIS.sys.
- Fix bug in resize CQ where UVP private buffer size was advertised as larger
than allocated, causing errors when buffering in the kernel proxy.
- Kill dead code.
Changed how SA requests are handled from user-mode. Synchronous requests
now use synchronous IOCTL processing rather than blocking in user-mode and
waiting for the IOCTL completion callback. This eliminates the potential
for deadlocks resulting from clients making synchronous SA queries from
a callback thread context.
ftillier [Mon, 20 Jun 2005 22:42:50 +0000 (22:42 +0000)]
Add new type for PDs - IB_PDT_UD - to allow HCA driver to control how the AV
limit per PD based on intended usage. AV limit for UD PDs is identical to that
of SQP PDs.
ftillier [Sat, 21 May 2005 00:03:59 +0000 (00:03 +0000)]
Move ci_ca_comp_cb to kernel-only file since it's only used there. Optimize signalling the CQ event by giving it a priority boost of IO_NETWORK_INCREMENT.