All of lore.kernel.org
 help / color / mirror / Atom feed
From: Coly Li <colyli@suse.de>
To: axboe@kernel.dk
Cc: linux-bcache@vger.kernel.org, linux-block@vger.kernel.org,
	"Gustavo A. R. Silva" <gustavoars@kernel.org>,
	Coly Li <colyli@suse.de>
Subject: [PATCH 6/7] bcache: Use 64-bit arithmetic instead of 32-bit
Date: Sun, 11 Apr 2021 21:43:15 +0800	[thread overview]
Message-ID: <20210411134316.80274-7-colyli@suse.de> (raw)
In-Reply-To: <20210411134316.80274-1-colyli@suse.de>

From: "Gustavo A. R. Silva" <gustavoars@kernel.org>

Cast multiple variables to (int64_t) in order to give the compiler
complete information about the proper arithmetic to use. Notice that
these variables are being used in contexts that expect expressions of
type int64_t  (64 bit, signed). And currently, such expressions are
being evaluated using 32-bit arithmetic.

Fixes: d0cf9503e908 ("octeontx2-pf: ethtool fec mode support")
Addresses-Coverity-ID: 1501724 ("Unintentional integer overflow")
Addresses-Coverity-ID: 1501725 ("Unintentional integer overflow")
Addresses-Coverity-ID: 1501726 ("Unintentional integer overflow")
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Coly Li <colyli@suse.de>
---
 drivers/md/bcache/writeback.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/md/bcache/writeback.c b/drivers/md/bcache/writeback.c
index bcd550a2b0da..8120da278161 100644
--- a/drivers/md/bcache/writeback.c
+++ b/drivers/md/bcache/writeback.c
@@ -110,13 +110,13 @@ static void __update_writeback_rate(struct cached_dev *dc)
 		int64_t fps;
 
 		if (c->gc_stats.in_use <= BCH_WRITEBACK_FRAGMENT_THRESHOLD_MID) {
-			fp_term = dc->writeback_rate_fp_term_low *
+			fp_term = (int64_t)dc->writeback_rate_fp_term_low *
 			(c->gc_stats.in_use - BCH_WRITEBACK_FRAGMENT_THRESHOLD_LOW);
 		} else if (c->gc_stats.in_use <= BCH_WRITEBACK_FRAGMENT_THRESHOLD_HIGH) {
-			fp_term = dc->writeback_rate_fp_term_mid *
+			fp_term = (int64_t)dc->writeback_rate_fp_term_mid *
 			(c->gc_stats.in_use - BCH_WRITEBACK_FRAGMENT_THRESHOLD_MID);
 		} else {
-			fp_term = dc->writeback_rate_fp_term_high *
+			fp_term = (int64_t)dc->writeback_rate_fp_term_high *
 			(c->gc_stats.in_use - BCH_WRITEBACK_FRAGMENT_THRESHOLD_HIGH);
 		}
 		fps = div_s64(dirty, dirty_buckets) * fp_term;
-- 
2.26.2


  parent reply	other threads:[~2021-04-11 13:44 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-11 13:43 [PATCH 0/7] bcache patches for Linux 5.13 -- 1st wave Coly Li
2021-04-11 13:43 ` [PATCH 1/7] bcache: reduce redundant code in bch_cached_dev_run() Coly Li
2021-04-11 13:43 ` [PATCH 2/7] bcache: remove PTR_CACHE Coly Li
2021-04-11 13:43 ` [PATCH 3/7] bcache: use NULL instead of using plain integer as pointer Coly Li
2021-04-11 13:43 ` [PATCH 4/7] md: bcache: avoid -Wempty-body warnings Coly Li
2021-04-11 13:43 ` [PATCH 5/7] md: bcache: Trivial typo fixes in the file journal.c Coly Li
2021-04-11 13:43 ` Coly Li [this message]
2021-04-11 13:43 ` [PATCH 7/7] bcache: fix a regression of code compiling failure in debug.c Coly Li
2021-04-12  9:06   ` Christoph Hellwig
2021-04-12  9:53     ` Coly Li
2021-04-12 12:50       ` Jens Axboe
2021-04-12 13:13         ` Coly Li
2021-04-11 14:40 ` [PATCH 0/7] bcache patches for Linux 5.13 -- 1st wave Jens Axboe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210411134316.80274-7-colyli@suse.de \
    --to=colyli@suse.de \
    --cc=axboe@kernel.dk \
    --cc=gustavoars@kernel.org \
    --cc=linux-bcache@vger.kernel.org \
    --cc=linux-block@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.