[{"id":1763309,"web_url":"http://patchwork.ozlabs.org/comment/1763309/","msgid":"<915293bc-2651-ede0-96af-4006f9a89e65@gmail.com>","list_archive_url":null,"date":"2017-09-05T12:41:57","subject":"Re: [PATCH v2 6/6] drm/tegra: Use u64_to_user_ptr helper","submitter":{"id":18124,"url":"http://patchwork.ozlabs.org/api/people/18124/","name":"Dmitry Osipenko","email":"digetx@gmail.com"},"content":"On 05.09.2017 11:10, Mikko Perttunen wrote:\n> Use the u64_to_user_ptr helper macro to cast IOCTL argument u64 values\n> to user pointers instead of writing out the cast manually.\n> \n> Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>\n> ---\n\nThis patch doesn't apply to linux-next, you should probably rebase this series.\n\n>  drivers/gpu/drm/tegra/drm.c | 18 ++++++++++--------\n>  1 file changed, 10 insertions(+), 8 deletions(-)\n> \n> diff --git a/drivers/gpu/drm/tegra/drm.c b/drivers/gpu/drm/tegra/drm.c\n> index e3331a2bc082..72d5c0021540 100644\n> --- a/drivers/gpu/drm/tegra/drm.c\n> +++ b/drivers/gpu/drm/tegra/drm.c\n> @@ -388,18 +388,21 @@ int tegra_drm_submit(struct tegra_drm_context *context,\n>  \tunsigned int num_cmdbufs = args->num_cmdbufs;\n>  \tunsigned int num_relocs = args->num_relocs;\n>  \tunsigned int num_waitchks = args->num_waitchks;\n> -\tstruct drm_tegra_cmdbuf __user *cmdbufs =\n> -\t\t(void __user *)(uintptr_t)args->cmdbufs;\n> -\tstruct drm_tegra_reloc __user *relocs =\n> -\t\t(void __user *)(uintptr_t)args->relocs;\n> -\tstruct drm_tegra_waitchk __user *waitchks =\n> -\t\t(void __user *)(uintptr_t)args->waitchks;\n> +\tstruct drm_tegra_cmdbuf __user *cmdbufs;\n> +\tstruct drm_tegra_reloc __user *relocs;\n> +\tstruct drm_tegra_waitchk __user *waitchks;\n> +\tstruct drm_tegra_syncpt __user *user_syncpt;\n>  \tstruct drm_tegra_syncpt syncpt;\n>  \tstruct host1x *host1x = dev_get_drvdata(drm->dev->parent);\n>  \tstruct host1x_syncpt *sp;\n>  \tstruct host1x_job *job;\n>  \tint err;\n>  \n> +\tcmdbufs = u64_to_user_ptr(args->cmdbufs);\n> +\trelocs = u64_to_user_ptr(args->relocs);\n> +\twaitchks = u64_to_user_ptr(args->waitchks);\n\nWhat about to prefix these variables with 'user_' for consistency?\n\n> +\tuser_syncpt = u64_to_user_ptr(args->syncpts);\n> +\n>  \t/* We don't yet support other than one syncpt_incr struct per submit */\n>  \tif (args->num_syncpts != 1)\n>  \t\treturn -EINVAL;\n> @@ -520,8 +523,7 @@ int tegra_drm_submit(struct tegra_drm_context *context,\n>  \t\t}\n>  \t}\n>  \n> -\tif (copy_from_user(&syncpt, (void __user *)(uintptr_t)args->syncpts,\n> -\t\t\t   sizeof(syncpt))) {\n> +\tif (copy_from_user(&syncpt, user_syncpt, sizeof(syncpt))) {\n>  \t\terr = -EFAULT;\n>  \t\tgoto fail;\n>  \t}\n>","headers":{"Return-Path":"<linux-tegra-owner@vger.kernel.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=linux-tegra-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"aO7DlhL4\"; dkim-atps=neutral"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xmmh50v2Fz9sRV\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue,  5 Sep 2017 22:47:17 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751512AbdIEMmG (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tTue, 5 Sep 2017 08:42:06 -0400","from mail-lf0-f67.google.com ([209.85.215.67]:36947 \"EHLO\n\tmail-lf0-f67.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751800AbdIEMmC (ORCPT\n\t<rfc822; linux-tegra@vger.kernel.org>); Tue, 5 Sep 2017 08:42:02 -0400","by mail-lf0-f67.google.com with SMTP id q132so960150lfe.4;\n\tTue, 05 Sep 2017 05:42:01 -0700 (PDT)","from [192.168.1.145] (ppp109-252-91-9.pppoe.spdop.ru.\n\t[109.252.91.9]) by smtp.googlemail.com with ESMTPSA id\n\th21sm117162ljb.48.2017.09.05.05.41.58\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tTue, 05 Sep 2017 05:41:59 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=gmail.com; s=20161025;\n\th=subject:to:cc:references:from:message-id:date:user-agent\n\t:mime-version:in-reply-to:content-language:content-transfer-encoding; \n\tbh=iytivM3T6I+LeDUe6/m+MhiJxM+42PaJq4omO3lgBAA=;\n\tb=aO7DlhL46dtv9zQ1q+goUV2NGn3HSlApWKBognfBphM4t5ncElvYOeUh8THqNqD0Y2\n\t712KiO6TGBLLfCCh1nCHEfXRVtdCnLuiTeyj9BhQxWPg67ow8moKoSHl5cw4KPzJHur5\n\t4Q/hrxVQMpNEkiv4pxxDeRMxfaCrTDgImGiPuB+ZG2W2gY1QaHg9UHlmYyHm8dEorv1L\n\tTWuho2PIzxvERA05SHbqw+4r+8x1o3Yi3ZcMM5xO88cg+mMCYldd1xlqFYUjL34CG2QA\n\tyYFVaWqvBkOmEsySCEC5YVHZtrImIuqAzY0EyNeOMITnpx9jN6dcyedA4jq/cajpDTxF\n\trowg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:subject:to:cc:references:from:message-id:date\n\t:user-agent:mime-version:in-reply-to:content-language\n\t:content-transfer-encoding;\n\tbh=iytivM3T6I+LeDUe6/m+MhiJxM+42PaJq4omO3lgBAA=;\n\tb=kiNvcUL+yt0ll3+OY2mPEPRWBoxYetXlbkmxlQxSw3OmBluVEqwNRQh4B7dD7boJ7R\n\tR34gy+/JNKGzIQCyQu1twObAc9dYuaEyLwVOX88AkiEMZHlWn77bzGoZ90mloSYddfJE\n\tFDh51b0iPtAEnMQ3Y0FDzrsbNhohfuaBlYA5JEkjVk4lq672KwjTTFIV5rHtAn42rEpa\n\tSK9NyY1YPib2ZdecCUNv0Is7xumPGxJ1rKjQQhH7V8NuoEjnWzNrCZILUUcHnNdVRVGE\n\tTvvCl0riC2r0EDrV0ZlLPk4pE9gZExka+Jck4QaOAREnZlC7oSl/Bylxk/7EYDmewSxL\n\tp4BA==","X-Gm-Message-State":"AHPjjUgSni43Hx/4szIeHmVoSprr/LN+KAvgwjxjmrh3Or1ElnXKu5QS\n\t23o7kEgYbWgsPQ5ENE0=","X-Google-Smtp-Source":"ADKCNb4+RagL3yX0jAl9VL88ddIHvxYmA/3kFntg0gjjWzqjG9d2XGInsv3vJ1EXQIIuVvUcKv9psQ==","X-Received":"by 10.25.150.83 with SMTP id y80mr1052913lfd.201.1504615319852; \n\tTue, 05 Sep 2017 05:41:59 -0700 (PDT)","Subject":"Re: [PATCH v2 6/6] drm/tegra: Use u64_to_user_ptr helper","To":"Mikko Perttunen <mperttunen@nvidia.com>, thierry.reding@gmail.com,\n\tjonathanh@nvidia.com","Cc":"dri-devel@lists.freedesktop.org, linux-tegra@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org","References":"<20170905081029.19769-1-mperttunen@nvidia.com>\n\t<20170905081029.19769-7-mperttunen@nvidia.com>","From":"Dmitry Osipenko <digetx@gmail.com>","Message-ID":"<915293bc-2651-ede0-96af-4006f9a89e65@gmail.com>","Date":"Tue, 5 Sep 2017 15:41:57 +0300","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<20170905081029.19769-7-mperttunen@nvidia.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","Sender":"linux-tegra-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<linux-tegra.vger.kernel.org>","X-Mailing-List":"linux-tegra@vger.kernel.org"}}]