linux/drivers/infiniband/hw/mthca
Roland Dreier 12103dca52 IB/mthca: Fix max_sge value returned by query_device
The mthca driver returns the maximum number of scatter/gather entries
returned by the firmware as the max_sge value when device properties
are queried.  However, the firmware also reports a limit on the
maximum descriptor size allowed, and because mthca takes into account
the worst case send request overhead when checking whether to allow a
QP to be created, the largest number of scatter/gather entries that
can be used with mthca may be limited by the maximum descriptor size
rather than just by the actual s/g entry limit.

This means that applications cannot actually create QPs with
max_send_sge equal to the limit returned by ib_query_device().  Fix
this by checking if the maximum descriptor size imposes a lower limit
and if so returning that lower limit.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
2008-05-16 14:58:44 -07:00
..
Kconfig IB: Use menuconfig for InfiniBand menu 2007-07-09 20:12:26 -07:00
Makefile IB/mthca: Always build debugging code unless CONFIG_EMBEDDED=y 2006-04-02 14:39:20 -07:00
mthca_allocator.c IB/mthca: Replace memset(<addr>, 0, PAGE_SIZE) with clear_page(<addr>) 2007-07-10 12:28:05 -07:00
mthca_av.c IB/mthca: Set GRH:HopLimit when building MLX headers 2007-05-19 08:51:56 -07:00
mthca_catas.c WorkStruct: make allyesconfig 2006-11-22 14:57:56 +00:00
mthca_cmd.c IB/mthca: Add IPoIB checksum offload support 2008-04-16 21:01:11 -07:00
mthca_cmd.h IB/mthca: Add IPoIB checksum offload support 2008-04-16 21:01:11 -07:00
mthca_config_reg.h
mthca_cq.c IB/mthca: Add IPoIB checksum offload support 2008-04-16 21:01:11 -07:00
mthca_dev.h Convert asm/semaphore.h users to linux/semaphore.h 2008-04-18 22:22:54 -04:00
mthca_doorbell.h IB/mthca: Avoid alignment traps when writing doorbells 2007-10-15 20:17:27 -07:00
mthca_eq.c IB/mthca: Formatting cleanups 2008-04-16 21:01:03 -07:00
mthca_mad.c IB/mthca: Formatting cleanups 2008-04-16 21:01:03 -07:00
mthca_main.c IB/mthca: Fix max_sge value returned by query_device 2008-05-16 14:58:44 -07:00
mthca_mcg.c IB/mthca: Fix section mismatches 2006-11-29 15:33:06 -08:00
mthca_memfree.c IB/mthca: Avoid integer overflow when allocating huge ICM table 2008-04-16 21:01:13 -07:00
mthca_memfree.h PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
mthca_mr.c IB/mthca: Avoid recycling old FMR R_Keys too soon 2008-04-29 13:46:53 -07:00
mthca_pd.c IB/mthca: Fix section mismatches 2006-11-29 15:33:06 -08:00
mthca_profile.c IB/mthca: Avoid integer overflow when dealing with profile size 2008-04-16 21:01:13 -07:00
mthca_profile.h IB/mthca: Avoid integer overflow when dealing with profile size 2008-04-16 21:01:13 -07:00
mthca_provider.c IB/mthca: Avoid changing userspace ABI to handle DMA write barrier attribute 2008-04-29 13:46:53 -07:00
mthca_provider.h IB/mthca: Avoid changing userspace ABI to handle DMA write barrier attribute 2008-04-29 13:46:53 -07:00
mthca_qp.c IB/mthca: Update QP state if query QP succeeds 2008-04-16 21:09:34 -07:00
mthca_reset.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
mthca_srq.c IB/ib_mthca: Pre-link receive WQEs in Tavor mode 2008-02-04 20:20:44 -08:00
mthca_uar.c IB/mthca: Don't use privileged UAR for kernel access 2006-09-22 15:17:18 -07:00
mthca_user.h IB/mthca: Avoid changing userspace ABI to handle DMA write barrier attribute 2008-04-29 13:46:53 -07:00
mthca_wqe.h IB/mthca: Add IPoIB checksum offload support 2008-04-16 21:01:11 -07:00