From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Carpenter Date: Thu, 14 Feb 2019 07:19:27 +0000 Subject: [PATCH] drm/msm: fix an error code in the ioctl Message-Id: <20190214071927.GC21768@kadam> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Rob Clark Cc: David Airlie , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, kernel-janitors-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Daniel Vetter , freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org The copy_to/from_user() functions return the number of bytes remaining to be copied but we should return -EFAULT to the user. Fixes: f05c83e77460 ("drm/msm: add uapi to get/set debug name") Signed-off-by: Dan Carpenter --- If I were reviewing this patch, I would be suspicous that we don't return immediately after the first copy_from_user() fails but I'm fairly sure that is the correct behavior. drivers/gpu/drm/msm/msm_drv.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c index b871e2e98129..1d4426cb260d 100644 --- a/drivers/gpu/drm/msm/msm_drv.c +++ b/drivers/gpu/drm/msm/msm_drv.c @@ -851,8 +851,9 @@ static int msm_ioctl_gem_info(struct drm_device *dev, void *data, ret = -EINVAL; break; } - ret = copy_from_user(msm_obj->name, - u64_to_user_ptr(args->value), args->len); + if (copy_from_user(msm_obj->name, u64_to_user_ptr(args->value), + args->len)) + ret = -EFAULT; msm_obj->name[args->len] = '\0'; for (i = 0; i < args->len; i++) { if (!isprint(msm_obj->name[i])) { @@ -868,8 +869,9 @@ static int msm_ioctl_gem_info(struct drm_device *dev, void *data, } args->len = strlen(msm_obj->name); if (args->value) { - ret = copy_to_user(u64_to_user_ptr(args->value), - msm_obj->name, args->len); + if (copy_to_user(u64_to_user_ptr(args->value), + msm_obj->name, args->len)) + ret = -EFAULT; } break; } -- 2.17.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Carpenter Subject: [PATCH] drm/msm: fix an error code in the ioctl Date: Thu, 14 Feb 2019 10:19:27 +0300 Message-ID: <20190214071927.GC21768@kadam> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Rob Clark Cc: David Airlie , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, kernel-janitors-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Daniel Vetter , freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org VGhlIGNvcHlfdG8vZnJvbV91c2VyKCkgZnVuY3Rpb25zIHJldHVybiB0aGUgbnVtYmVyIG9mIGJ5 dGVzIHJlbWFpbmluZwp0byBiZSBjb3BpZWQgYnV0IHdlIHNob3VsZCByZXR1cm4gLUVGQVVMVCB0 byB0aGUgdXNlci4KCkZpeGVzOiBmMDVjODNlNzc0NjAgKCJkcm0vbXNtOiBhZGQgdWFwaSB0byBn ZXQvc2V0IGRlYnVnIG5hbWUiKQpTaWduZWQtb2ZmLWJ5OiBEYW4gQ2FycGVudGVyIDxkYW4uY2Fy cGVudGVyQG9yYWNsZS5jb20+Ci0tLQpJZiBJIHdlcmUgcmV2aWV3aW5nIHRoaXMgcGF0Y2gsIEkg d291bGQgYmUgc3VzcGljb3VzIHRoYXQgd2UgZG9uJ3QKcmV0dXJuIGltbWVkaWF0ZWx5IGFmdGVy IHRoZSBmaXJzdCBjb3B5X2Zyb21fdXNlcigpIGZhaWxzIGJ1dCBJJ20gZmFpcmx5CnN1cmUgdGhh dCBpcyB0aGUgY29ycmVjdCBiZWhhdmlvci4KCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYu YyB8IDEwICsrKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmMgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYwppbmRleCBiODcxZTJlOTgxMjkuLjFkNDQyNmNi MjYwZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmMKQEAgLTg1MSw4ICs4NTEsOSBAQCBzdGF0aWMgaW50 IG1zbV9pb2N0bF9nZW1faW5mbyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAog CQkJcmV0ID0gLUVJTlZBTDsKIAkJCWJyZWFrOwogCQl9Ci0JCXJldCA9IGNvcHlfZnJvbV91c2Vy KG1zbV9vYmotPm5hbWUsCi0JCQl1NjRfdG9fdXNlcl9wdHIoYXJncy0+dmFsdWUpLCBhcmdzLT5s ZW4pOworCQlpZiAoY29weV9mcm9tX3VzZXIobXNtX29iai0+bmFtZSwgdTY0X3RvX3VzZXJfcHRy KGFyZ3MtPnZhbHVlKSwKKwkJCQkgICBhcmdzLT5sZW4pKQorCQkJcmV0ID0gLUVGQVVMVDsKIAkJ bXNtX29iai0+bmFtZVthcmdzLT5sZW5dID0gJ1wwJzsKIAkJZm9yIChpID0gMDsgaSA8IGFyZ3Mt PmxlbjsgaSsrKSB7CiAJCQlpZiAoIWlzcHJpbnQobXNtX29iai0+bmFtZVtpXSkpIHsKQEAgLTg2 OCw4ICs4NjksOSBAQCBzdGF0aWMgaW50IG1zbV9pb2N0bF9nZW1faW5mbyhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LCB2b2lkICpkYXRhLAogCQl9CiAJCWFyZ3MtPmxlbiA9IHN0cmxlbihtc21fb2Jq LT5uYW1lKTsKIAkJaWYgKGFyZ3MtPnZhbHVlKSB7Ci0JCQlyZXQgPSBjb3B5X3RvX3VzZXIodTY0 X3RvX3VzZXJfcHRyKGFyZ3MtPnZhbHVlKSwKLQkJCQkJbXNtX29iai0+bmFtZSwgYXJncy0+bGVu KTsKKwkJCWlmIChjb3B5X3RvX3VzZXIodTY0X3RvX3VzZXJfcHRyKGFyZ3MtPnZhbHVlKSwKKwkJ CQkJIG1zbV9vYmotPm5hbWUsIGFyZ3MtPmxlbikpCisJCQkJcmV0ID0gLUVGQVVMVDsKIAkJfQog CQlicmVhazsKIAl9Ci0tIAoyLjE3LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxpc3QKRnJlZWRyZW5vQGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ZyZWVkcmVubw==