RDMA/uverbs: Mark ioctl responses with UVERBS_ATTR_F_VALID_OUTPUT
authorJason Gunthorpe <jgg@mellanox.com>
Fri, 11 Jan 2019 06:21:44 +0000 (08:21 +0200)
committerJason Gunthorpe <jgg@mellanox.com>
Mon, 14 Jan 2019 21:02:22 +0000 (14:02 -0700)
commitd6f4a21f309dfe10a5693ad236358dd6fcc46f7a
treee900ea13c1f32a17f7d7a9fe059d030c38ee5d3b
parent9d9f59b4204bc41896c866b3e5856e5b416aa199
RDMA/uverbs: Mark ioctl responses with UVERBS_ATTR_F_VALID_OUTPUT

When the ioctl interface for the write commands was introduced it did
not mark the core response with UVERBS_ATTR_F_VALID_OUTPUT. This causes
rdma-core in userspace to not mark the buffers as written for valgrind.

Along the same lines it turns out we have always missed marking the driver
data. Fixing both of these makes valgrind work properly with rdma-core and
ioctl.

Fixes: 4785860e04bc ("RDMA/uverbs: Implement an ioctl that can call write and write_ex handlers")
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Reviewed-by: Artemy Kovalyov <artemyko@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
drivers/infiniband/core/rdma_core.h
drivers/infiniband/core/uverbs_cmd.c
drivers/infiniband/core/uverbs_ioctl.c
drivers/infiniband/core/uverbs_main.c