* [PATCH RESEND] drm/msm: Truncate the buffer object name if the copy from user failed
@ 2019-02-19 18:40 Jordan Crouse
2019-03-04 21:01 ` Sean Paul
0 siblings, 1 reply; 2+ messages in thread
From: Jordan Crouse @ 2019-02-19 18:40 UTC (permalink / raw)
To: freedreno
Cc: David Airlie, linux-arm-msm, linux-kernel, dri-devel, Sean Paul,
Dan Carpenter
(Resend since there was a compile error that I forgot to commit before sending)
If there is a error while doing a copy_from_user() for MSM_INFO_SET_NAME
make sure to truncate the object name so that there isn't a chance that
we'll have random data in the string.
This is on top of [1] reported and fixed by Dan Carpenter.
[1] https://patchwork.freedesktop.org/series/56656/
Fixes: f05c83e77460 ("drm/msm: add uapi to get/set debug name")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
---
drivers/gpu/drm/msm/msm_drv.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index 87eae44..906b2bb 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -852,8 +852,11 @@ static int msm_ioctl_gem_info(struct drm_device *dev, void *data,
break;
}
if (copy_from_user(msm_obj->name, u64_to_user_ptr(args->value),
- args->len))
+ args->len)) {
+ msm_obj->name[0] = '\0';
ret = -EFAULT;
+ break;
+ }
msm_obj->name[args->len] = '\0';
for (i = 0; i < args->len; i++) {
if (!isprint(msm_obj->name[i])) {
--
2.7.4
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH RESEND] drm/msm: Truncate the buffer object name if the copy from user failed
2019-02-19 18:40 [PATCH RESEND] drm/msm: Truncate the buffer object name if the copy from user failed Jordan Crouse
@ 2019-03-04 21:01 ` Sean Paul
0 siblings, 0 replies; 2+ messages in thread
From: Sean Paul @ 2019-03-04 21:01 UTC (permalink / raw)
To: Jordan Crouse
Cc: freedreno, linux-arm-msm, Sean Paul, linux-kernel, dri-devel,
Rob Clark, David Airlie, Dan Carpenter, Daniel Vetter
On Tue, Feb 19, 2019 at 11:40:19AM -0700, Jordan Crouse wrote:
> (Resend since there was a compile error that I forgot to commit before sending)
>
> If there is a error while doing a copy_from_user() for MSM_INFO_SET_NAME
> make sure to truncate the object name so that there isn't a chance that
> we'll have random data in the string.
>
> This is on top of [1] reported and fixed by Dan Carpenter.
>
> [1] https://patchwork.freedesktop.org/series/56656/
>
> Fixes: f05c83e77460 ("drm/msm: add uapi to get/set debug name")
> Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
> Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Reviewed-by: Sean Paul <sean@poorly.run>
> ---
>
> drivers/gpu/drm/msm/msm_drv.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index 87eae44..906b2bb 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -852,8 +852,11 @@ static int msm_ioctl_gem_info(struct drm_device *dev, void *data,
> break;
> }
> if (copy_from_user(msm_obj->name, u64_to_user_ptr(args->value),
> - args->len))
> + args->len)) {
> + msm_obj->name[0] = '\0';
> ret = -EFAULT;
> + break;
> + }
> msm_obj->name[args->len] = '\0';
> for (i = 0; i < args->len; i++) {
> if (!isprint(msm_obj->name[i])) {
> --
> 2.7.4
>
--
Sean Paul, Software Engineer, Google / Chromium OS
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-03-04 21:01 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-19 18:40 [PATCH RESEND] drm/msm: Truncate the buffer object name if the copy from user failed Jordan Crouse
2019-03-04 21:01 ` Sean Paul
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).