linux-hardened/drivers/infiniband/core
Daniel Jurgens 877add2817 IB/core: Only maintain real QPs in the security lists
When modify QP is called on a shared QP update the security context for
the real QP. When security is subsequently enforced the shared QP
handles will be checked as well.

Without this change shared QP handles get added to the port/pkey lists,
which is a bug, because not all shared QP handles will be checked for
access. Also the shared QP security context wouldn't get removed from
the port/pkey lists causing access to free memory and list corruption
when they are destroyed.

Cc: stable@vger.kernel.org
Fixes: d291f1a652 ("IB/core: Enforce PKey security on QPs")
Signed-off-by: Daniel Jurgens <danielj@mellanox.com>
Reviewed-by: Parav Pandit <parav@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Doug Ledford <dledford@redhat.com>
2017-11-13 16:24:17 -05:00
..
addr.c RDMA/core: Make function rdma_copy_addr return void 2017-11-13 16:18:33 -05:00
agent.c IB/core: Rename ib_destroy_ah to rdma_destroy_ah 2017-05-01 14:32:43 -04:00
agent.h IB/mad: Add final OPA MAD processing 2015-06-12 14:49:18 -04:00
cache.c RDMA/(core, ulp): Convert register/unregister event handler to be void 2017-08-24 16:27:10 -04:00
cgroup.c IB/core: added support to use rdma cgroup controller 2017-01-10 11:14:27 -05:00
cm.c IB/cm: Fix memory corruption in handling CM request 2017-10-25 14:37:03 -04:00
cm_msgs.h IB/core: Fix unaligned accesses 2015-05-05 13:21:27 -04:00
cma.c RDMA/core: Make function rdma_copy_addr return void 2017-11-13 16:18:33 -05:00
cma_configfs.c IB/cma: Add default RoCE TOS to CMA configfs 2017-02-15 09:51:28 -05:00
core_priv.h Merge branch 'rdma-netlink' into k.o/merge-test 2017-08-10 14:34:18 -04:00
cq.c IB/cq: Don't process more than the given budget 2017-03-24 22:19:48 -04:00
device.c Merge branch 'mellanox' into k.o/for-next 2017-08-24 20:25:15 -04:00
fmr_pool.c IB/fmr_pool: Convert the cleanup thread into kthread worker API 2017-04-25 14:24:17 -04:00
iwcm.c RDMA/iwcm: Remove a set-but-not-used variable 2017-10-14 20:47:05 -04:00
iwcm.h iw_cm: free cm_id resources on the last deref 2016-08-02 13:15:18 -04:00
iwpm_msg.c RDMA/iwpm: Properly mark end of NL messages 2017-09-29 11:32:42 -04:00
iwpm_util.c RDMA/iwpm: Properly mark end of NL messages 2017-09-29 11:32:42 -04:00
iwpm_util.h iwpm: crash fix for large connections test 2016-03-16 13:48:32 -04:00
mad.c IB/core: Avoid crash on pkey enforcement failed in received MADs 2017-11-10 13:26:00 -05:00
mad_priv.h IB/mad: use CQ abstraction 2016-01-19 15:25:45 -05:00
mad_rmpp.c IB/mad: Change slid in RMPP recv from 16 to 32 bits 2017-08-08 14:47:18 -04:00
mad_rmpp.h
Makefile RDMA/umem: Avoid partial declaration of non-static function 2017-11-10 13:02:12 -05:00
mr_pool.c IB/core: add a simple MR pool 2016-05-13 13:37:18 -04:00
multicast.c IB/core: Define 'ib' and 'roce' rdma_ah_attr types 2017-05-01 14:32:43 -04:00
netlink.c RDMA/netlink: OOPs in rdma_nl_rcv_msg() from misinterpreted flag 2017-10-25 14:54:43 -04:00
nldev.c rdma: Autoload netlink client modules 2017-08-22 17:04:22 -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 IB/core: trivial prink cleanup. 2016-03-03 10:20:25 -05:00
rdma_core.c IB/core: Explicitly destroy an object while keeping uobject 2017-08-31 08:35:11 -04:00
rdma_core.h IB/core: Add new ioctl interface 2017-08-31 08:35:09 -04:00
roce_gid_mgmt.c IB/core: Add generic function to extract IB speed from netdev 2017-07-24 08:45:11 -04:00
rw.c IB/core: remove redundant check on prot_sg_cnt 2017-10-10 10:49:45 -04:00
sa.h
sa_query.c RDMA/(core, ulp): Convert register/unregister event handler to be void 2017-08-24 16:27:10 -04:00
security.c IB/core: Only maintain real QPs in the security lists 2017-11-13 16:24:17 -05:00
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 unable to change lifespan entry for hw_counters 2017-10-18 12:10:36 -04:00
ucm.c IB/core: Convert ah_attr from OPA to IB when copying to user 2017-08-08 14:47:18 -04:00
ucma.c IB/core: Convert ah_attr from OPA to IB when copying to user 2017-08-08 14:47:18 -04:00
ud_header.c IB/core: trivial prink cleanup. 2016-03-03 10:20:25 -05:00
umem.c RDMA/core: not to set page dirty bit if it's already set. 2017-06-01 17:20:12 -04:00
umem_odp.c RDMA/umem: Avoid partial declaration of non-static function 2017-11-10 13:02:12 -05:00
user_mad.c Merge branch 'for-next-early' into for-next 2017-10-18 13:07:13 -04:00
uverbs.h IB/uverbs: clean up INIT_UDATA() macro usage 2017-09-27 08:54:19 -04:00
uverbs_cmd.c IB/core: Add PCI write end padding flags for WQ and QP 2017-11-10 13:50:27 -05:00
uverbs_ioctl.c RDMA/uverbs: Make the code in ib_uverbs_cmd_verbs() less confusing 2017-10-18 10:42:02 -04:00
uverbs_ioctl_merge.c IB/core: fix spelling mistake: "aceess" -> "access" 2017-09-27 08:54:19 -04:00
uverbs_main.c IB/uverbs: clean up INIT_UDATA_BUF_OR_NULL usage 2017-09-27 08:54:19 -04:00
uverbs_marshall.c IB/core: Convert OPA AH to IB for Extended LIDs only 2017-11-13 15:53:57 -05:00
uverbs_std_types.c RDMA/core: avoid uninitialized variable warning in create_udata 2017-11-13 16:11:11 -05:00
verbs.c IB: Let ib_core resolve destination mac address 2017-10-18 12:10:36 -04:00