linux/drivers/infiniband/core
Majd Dibbiny 3d943c9d1c IB/{core, mlx5}: Fix input len in vendor part of create_qp/srq
Currently, the inlen field of the vendor's part of the command
doesn't match the command buffer. This happens because the inlen
accommodates ib_uverbs_cmd_hdr which is deducted from the in buffer.
This is problematic since the vendor function could be called either
from the legacy verb (where the input length mismatches the actual
length) or by the extended verb (where the length matches). The vendor
has no idea which function calls it and therefore has no way to know
how the length variable should be treated.

Fixing this by aligning the inlen to the correct length.

All vendor drivers either assumed that inlen >= sizeof(vendor_uhw_cmd)
or just failed wrongly (mlx5) and fixed in this patch.

Fixes: cfb5e088e2 ('IB/mlx5: Add CQE version 1 support to user QPs and SRQs')
Signed-off-by: Majd Dibbiny <majd@mellanox.com>
Reviewed-by: Matan Barak <matanb@mellanox.com>
Reviewed-by: Haggai Eran <haggaie@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
2016-03-03 10:00:18 -05:00
..
addr.c IB/core: Use hop-limit from IP stack for RoCE 2016-01-19 15:26:56 -05:00
agent.c IB: split struct ib_send_wr 2015-10-08 11:09:10 +01:00
agent.h IB/mad: Add final OPA MAD processing 2015-06-12 14:49:18 -04:00
cache.c IB/core: Eliminate sparse false context imbalance warning 2016-01-19 15:26:21 -05:00
cm_msgs.h IB/core: Fix unaligned accesses 2015-05-05 13:21:27 -04:00
cm.c IB/core: Use hop-limit from IP stack for RoCE 2016-01-19 15:26:56 -05:00
cma_configfs.c IB/cma: allocating too much memory in make_cma_ports() 2016-01-19 15:17:40 -05:00
cma.c Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08:00
core_priv.h IB/cma: Add configfs for rdma_cm 2015-12-23 10:39:52 -05:00
cq.c IB: add a proper completion queue abstraction 2015-12-11 14:10:43 -08:00
device.c IB/core: Fix missed clean call in registration path 2016-02-29 20:41:47 -05:00
fmr_pool.c IB/core: Avoid calling ib_query_device 2015-12-22 14:39:00 -05:00
iwcm.c
iwcm.h
iwpm_msg.c RDMA/core: Fixes for port mapper client registration 2015-07-14 13:20:10 -04:00
iwpm_util.c RDMA/core: Fixes for port mapper client registration 2015-07-14 13:20:10 -04:00
iwpm_util.h RDMA/core: Fixes for port mapper client registration 2015-07-14 13:20:10 -04:00
mad_priv.h IB/mad: use CQ abstraction 2016-01-19 15:25:45 -05:00
mad_rmpp.c IB/mad: Add final OPA MAD processing 2015-06-12 14:49:18 -04:00
mad_rmpp.h
mad.c IB/mad: use CQ abstraction 2016-01-19 15:25:45 -05:00
Makefile IB/cma: Add configfs for rdma_cm 2015-12-23 10:39:52 -05:00
multicast.c IB/cma: Join and leave multicast groups with IGMP 2015-12-23 10:39:53 -05:00
netlink.c IB/core: Add rdma netlink helper functions 2015-08-30 18:12:25 -04:00
opa_smi.h IB: Add rdma_cap_ib_switch helper and use where appropriate 2015-07-14 13:20:08 -04:00
packer.c
roce_gid_mgmt.c IB/core: Move rdma_is_upper_dev_rcu to header file 2015-12-23 10:35:12 -05:00
sa_query.c IB/sa: Fix netlink local service GFP crash 2016-01-21 11:59:19 -05:00
sa.h
smi.c IB: Add rdma_cap_ib_switch helper and use where appropriate 2015-07-14 13:20:08 -04:00
smi.h IB: Add rdma_cap_ib_switch helper and use where appropriate 2015-07-14 13:20:08 -04:00
sysfs.c IB/core: Fix reading capability mask of the port info class 2016-02-11 11:05:56 -05:00
ucm.c IB/cm: Remove compare_data checks 2015-08-30 15:48:24 -04:00
ucma.c IB/ucma: Take the network namespace from the process 2015-10-28 12:32:48 -04:00
ud_header.c IB/core: Set correct payload length for RoCEv2 over IPv6 2016-02-02 16:42:22 -05:00
umem_odp.c IB/core: constify mmu_notifier_ops structures 2015-12-24 00:17:33 -05:00
umem_rbtree.c
umem.c IB/core: don't disallow registering region starting at 0x0 2015-04-15 16:05:02 -04:00
user_mad.c IB/mad: pass ib_mad_send_buf explicitly to the recv_handler 2016-01-19 15:25:36 -05:00
uverbs_cmd.c IB/{core, mlx5}: Fix input len in vendor part of create_qp/srq 2016-03-03 10:00:18 -05:00
uverbs_main.c IB: remove in-kernel support for memory windows 2015-12-23 14:29:04 -05:00
uverbs_marshall.c IB/core: Add gid_type to gid attribute 2015-12-23 10:35:10 -05:00
uverbs.h IB: remove in-kernel support for memory windows 2015-12-23 14:29:04 -05:00
verbs.c IB/core: Use hop-limit from IP stack for RoCE 2016-01-19 15:26:56 -05:00