From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bob Copeland Subject: [PATCH 4/4] omfs: fix potential integer overflow in allocator Date: Mon, 18 May 2015 07:34:38 -0400 Message-ID: <1431948878-3756-5-git-send-email-me@bobcopeland.com> References: <1431948878-3756-1-git-send-email-me@bobcopeland.com> Cc: linux-fsdevel@vger.kernel.org, Bob Copeland To: akpm@linux-foundation.org Return-path: Received: from mail-ig0-f173.google.com ([209.85.213.173]:38791 "EHLO mail-ig0-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753804AbbERLhc (ORCPT ); Mon, 18 May 2015 07:37:32 -0400 Received: by igcau1 with SMTP id au1so44724919igc.1 for ; Mon, 18 May 2015 04:37:31 -0700 (PDT) In-Reply-To: <1431948878-3756-1-git-send-email-me@bobcopeland.com> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Both 'i' and 'bits_per_entry' are signed integers but the result is a u64 block number. Cast i to u64 to avoid truncation on 32-bit targets. Found by Coverity (CID 200679). Signed-off-by: Bob Copeland --- fs/omfs/bitmap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/omfs/bitmap.c b/fs/omfs/bitmap.c index 082234581d05..83f4e76511c2 100644 --- a/fs/omfs/bitmap.c +++ b/fs/omfs/bitmap.c @@ -159,7 +159,7 @@ int omfs_allocate_range(struct super_block *sb, goto out; found: - *return_block = i * bits_per_entry + bit; + *return_block = (u64) i * bits_per_entry + bit; *return_size = run; ret = set_run(sb, i, bits_per_entry, bit, run, 1); -- 2.1.4