RDMA/uverbs: Verify MR access flags
authorMichael Guralnik <michaelgur@mellanox.com>
Wed, 8 Jan 2020 18:05:35 +0000 (20:05 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 14 Feb 2020 21:33:23 +0000 (16:33 -0500)
commit ca95c1411198c2d87217c19d44571052cdc94725 upstream.

Verify that MR access flags that are passed from user are all supported
ones, otherwise an error is returned.

Fixes: 4fca03778351 ("IB/uverbs: Move ib_access_flags and ib_read_counters_flags to uapi")
Link: https://lore.kernel.org/r/1578506740-22188-6-git-send-email-yishaih@mellanox.com
Signed-off-by: Michael Guralnik <michaelgur@mellanox.com>
Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
include/rdma/ib_verbs.h

index 54e4d1f..874cd6e 100644 (file)
@@ -3864,6 +3864,9 @@ static inline int ib_check_mr_access(int flags)
            !(flags & IB_ACCESS_LOCAL_WRITE))
                return -EINVAL;
 
+       if (flags & ~IB_ACCESS_SUPPORTED)
+               return -EINVAL;
+
        return 0;
 }