From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2DD42C43461 for ; Tue, 15 Sep 2020 17:31:33 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B0CD520936 for ; Tue, 15 Sep 2020 17:31:32 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="a6yEjB79"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=google.com header.i=@google.com header.b="jndKH7zP" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B0CD520936 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=UKaW/nmGcit/qlXwl5y5vSaN7z08Xfld951UxDm1l9E=; b=a6yEjB79tS4/TpbrdZBhnMacd zMO5tvUD9e0i9ULJ/40VZzOdNdfN8fmIZZ+MIPAEVv5EX5tbfjUllpxck3Gvvagz01veNBPnWXp1S EiNK+fPFRugXc9fUJZBJsRyNZbCiehjjYesDNCPnD1S1Nbuxh89izLy7+TFzxw6KvFVTbwHhi3rPG XyihDmB2O6aLYWCIgO3w6yZoQqZY9VtyYjhzICybezuJR4Fnzg5QX1lJr7QranpUoNz6FTSZB3NUy oT7ZHACKDfKJZk7FOFiRqKvGgb+g2YXQMTjPGlUjsroLuFKpW7DTMV71JgxqrrHhHxRnzI49G9iub Am6mM2e8Q==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kIEmE-0001py-0Z; Tue, 15 Sep 2020 17:30:01 +0000 Received: from mail-ed1-x544.google.com ([2a00:1450:4864:20::544]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kIEm9-0001oT-QX for linux-arm-kernel@lists.infradead.org; Tue, 15 Sep 2020 17:29:55 +0000 Received: by mail-ed1-x544.google.com with SMTP id ay8so3834095edb.8 for ; Tue, 15 Sep 2020 10:29:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=SlyX5qFvMN3KiboyllxLciToK2Eq4o7JzV2O6OwBIsw=; b=jndKH7zPjuT+Yy8CprIBxo1iTRcTUheSW1BJZMKuVBjDMhYq0L3y4DaJALchKU0bWV /DG6HGyrAEcz92/BEzogfoheUq2NoOqWgUDoFeeALWTSjU7t6cmDtPMvcMOFw3IakuWp gTraMfBlRb4r8fMQ5MmQhdTGA8v2635Dv7yTHmUW7c4FifhvFkeow+fmjxnyULOz9cNa h1HY7N4mglhjyAyOCRnfI4Cdt1T65RO98WM5J4PiOI3ffCzhLE0AI3h6weRFWLf3hKMm EKJFo5+5hvJXNo5Y4rFLV8xJX6gMUJcVSH99V+Jsd8X0JKE85PLJ2LMkkl1g2xhe0pJp aGxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=SlyX5qFvMN3KiboyllxLciToK2Eq4o7JzV2O6OwBIsw=; b=YYjulkTLGxl9NG0oaLSZxnCIMJeFdOX89xN3AO2+ddfCSwFBcGT8Vh0LgRVutK4L68 9IOqatPOOse0v63mwwllmjkfCQSV8OhADxWT8p3V0lpuBk0dPSpF/xD23kD2xcjMqAGf MpxziM8WlJFfPpunDRFRnWj9371DfEr22sFPyDaeIBbhexROG+0mQtAfTnZ5yKHJuAuo tLoBOmqP82MYvKhr4KRLeWy9z3k0Fb4S16l9ijRwyaP3q8wiT7Oi1oyGJ1xbW/KotYQU PLYmiAKAz12aR2mV2H4IOulPqlQ8qkhInEV5IzRQe8vyH3e83VRNuquUNu/ZLFr4Qk7M 3TUw== X-Gm-Message-State: AOAM532DhAL54Qa8p9q7WCMUneQgJ00kg/4PhSscZPNNIrk+Ls7qWZil hswedBCVWUUhl8b+xQGPfHVijwRYDia5AHKWkrSWXQ== X-Google-Smtp-Source: ABdhPJyTXQP46Cu/TV0meUS7Ki8Jvai2uP0B7f5/avU/VxUKH5b+mSAJAXEN/96XuLNIG/fdWfb7f8IfAIdjG+sZPvs= X-Received: by 2002:a50:e78f:: with SMTP id b15mr23870682edn.104.1600190989874; Tue, 15 Sep 2020 10:29:49 -0700 (PDT) MIME-Version: 1.0 References: <20200915162049.36434-1-colin.king@canonical.com> In-Reply-To: <20200915162049.36434-1-colin.king@canonical.com> From: Guenter Roeck Date: Tue, 15 Sep 2020 10:29:39 -0700 Message-ID: Subject: Re: [PATCH] drm/rockchip: cdn-dp: fix sign extension on an int multiply for a u64 result To: Colin King X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200915_132954_038090_CF21F425 X-CRM114-Status: GOOD ( 19.97 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?Q?Heiko_St=C3=BCbner?= , "open list:ARM/Rockchip SoC..." , David Airlie , kernel-janitors@vger.kernel.org, Sandy Huang , Maling list - DRI developers , linux-kernel , Guenter Roeck , Sean Paul , Daniel Vetter , Chris Zhong , "moderated list:ARM PORT" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Tue, Sep 15, 2020 at 9:20 AM Colin King wrote: > > From: Colin Ian King > > The variable bit_per_pix is a u8 and is promoted in the multiplication > to an int type and then sign extended to a u64. If the result of the > int multiplication is greater than 0x7fffffff then the upper 32 bits will > be set to 1 as a result of the sign extension. Avoid this by casting > tu_size_reg to u64 to avoid sign extension and also a potential overflow. > > Addresses-Coverity: ("Unintended sign extension") > Fixes: 1a0f7ed3abe2 ("drm/rockchip: cdn-dp: add cdn DP support for rk3399") > Signed-off-by: Colin Ian King Reviewed-by: Guenter Roeck > --- > drivers/gpu/drm/rockchip/cdn-dp-reg.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/rockchip/cdn-dp-reg.c b/drivers/gpu/drm/rockchip/cdn-dp-reg.c > index 9d2163ef4d6e..33fb4d05c506 100644 > --- a/drivers/gpu/drm/rockchip/cdn-dp-reg.c > +++ b/drivers/gpu/drm/rockchip/cdn-dp-reg.c > @@ -658,7 +658,7 @@ int cdn_dp_config_video(struct cdn_dp_device *dp) > */ > do { > tu_size_reg += 2; > - symbol = tu_size_reg * mode->clock * bit_per_pix; > + symbol = (u64)tu_size_reg * mode->clock * bit_per_pix; > do_div(symbol, dp->max_lanes * link_rate * 8); > rem = do_div(symbol, 1000); > if (tu_size_reg > 64) { > -- > 2.27.0 > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel