Skip to content

Commit 7a8690e

Browse files
Leon Romanovskyjgunthorpe
authored andcommitted
RDMA/ucm: Mark UCM interface as BROKEN
In commit 357d23c811a7 ("Remove the obsolete libibcm library") in rdma-core [1], we removed obsolete library which used the /dev/infiniband/ucmX interface. Following multiple syzkaller reports about non-sanitized user input in the UCMA module, the short audit reveals the same issues in UCM module too. It is better to disable this interface in the kernel, before syzkaller team invests time and energy to harden this unused interface. [1] linux-rdma/rdma-core#279 Signed-off-by: Leon Romanovsky <[email protected]> Signed-off-by: Jason Gunthorpe <[email protected]>
1 parent 9906224 commit 7a8690e

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

drivers/infiniband/Kconfig

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,17 @@ config INFINIBAND_USER_ACCESS
3535
libibverbs, libibcm and a hardware driver library from
3636
rdma-core <https://github.com/linux-rdma/rdma-core>.
3737

38+
config INFINIBAND_USER_ACCESS_UCM
39+
bool "Userspace CM (UCM, DEPRECATED)"
40+
depends on BROKEN
41+
depends on INFINIBAND_USER_ACCESS
42+
help
43+
The UCM module has known security flaws, which no one is
44+
interested to fix. The user-space part of this code was
45+
dropped from the upstream a long time ago.
46+
47+
This option is DEPRECATED and planned to be removed.
48+
3849
config INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI
3950
bool "Allow experimental legacy verbs in new ioctl uAPI (EXPERIMENTAL)"
4051
depends on INFINIBAND_USER_ACCESS

drivers/infiniband/core/Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ user_access-$(CONFIG_INFINIBAND_ADDR_TRANS) := rdma_ucm.o
55
obj-$(CONFIG_INFINIBAND) += ib_core.o ib_cm.o iw_cm.o \
66
$(infiniband-y)
77
obj-$(CONFIG_INFINIBAND_USER_MAD) += ib_umad.o
8-
obj-$(CONFIG_INFINIBAND_USER_ACCESS) += ib_uverbs.o ib_ucm.o \
9-
$(user_access-y)
8+
obj-$(CONFIG_INFINIBAND_USER_ACCESS) += ib_uverbs.o $(user_access-y)
9+
obj-$(CONFIG_INFINIBAND_USER_ACCESS_UCM) += ib_ucm.o $(user_access-y)
1010

1111
ib_core-y := packer.o ud_header.o verbs.o cq.o rw.o sysfs.o \
1212
device.o fmr_pool.o cache.o netlink.o \

0 commit comments

Comments
 (0)