diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-09-05 09:04:07 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-09-05 09:04:07 +0300 |
commit | fbc1ec2efe665c07c8c71f9f19edb018f7984107 (patch) | |
tree | e7df9dac12c640a83ce8859300e061f1f8913ecd /include/rdma/ib_verbs.h | |
parent | 02baff325462cc7e81241b21959c5e62e7ca575e (diff) | |
parent | c6935931c1894ff857616ff8549b61236a19148f (diff) | |
download | linux-fbc1ec2efe665c07c8c71f9f19edb018f7984107.tar.xz |
Merge 4.8-rc5 into char-misc-next
We want the fixes in here for merging and testing.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/rdma/ib_verbs.h')
-rw-r--r-- | include/rdma/ib_verbs.h | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h index 8e90dd28bb75..e1f96737c2a1 100644 --- a/include/rdma/ib_verbs.h +++ b/include/rdma/ib_verbs.h @@ -2115,22 +2115,17 @@ static inline bool ib_is_udata_cleared(struct ib_udata *udata, size_t len) { const void __user *p = udata->inbuf + offset; - bool ret = false; + bool ret; u8 *buf; if (len > USHRT_MAX) return false; - buf = kmalloc(len, GFP_KERNEL); - if (!buf) + buf = memdup_user(p, len); + if (IS_ERR(buf)) return false; - if (copy_from_user(buf, p, len)) - goto free; - ret = !memchr_inv(buf, 0, len); - -free: kfree(buf); return ret; } |