From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932090AbdEGWKn (ORCPT ); Sun, 7 May 2017 18:10:43 -0400 Received: from mail-wr0-f195.google.com ([209.85.128.195]:34733 "EHLO mail-wr0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756290AbdEGWKl (ORCPT ); Sun, 7 May 2017 18:10:41 -0400 From: Karim Eshapa To: tytso@mit.edu Cc: arnd@arndb.de, gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, Karim Eshapa Subject: [PATCH] char: random: casting prevents missing calculations Date: Sun, 7 May 2017 14:47:25 +0200 Message-Id: <1494161245-5722-1-git-send-email-karim.eshapa@gmail.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Cast (long)jiffies and (long)state->last_time beacause they tends to unsigned long. may cause a problem specially when comparison happens (< 0). Signed-off-by: Karim Eshapa --- drivers/char/random.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/char/random.c b/drivers/char/random.c index 0ab0249..f685e78 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -1012,7 +1012,7 @@ static void add_timer_randomness(struct timer_rand_state *state, unsigned num) preempt_disable(); - sample.jiffies = jiffies; + sample.jiffies = (long)jiffies; sample.cycles = random_get_entropy(); sample.num = num; r = &input_pool; @@ -1025,7 +1025,7 @@ static void add_timer_randomness(struct timer_rand_state *state, unsigned num) */ if (!state->dont_count_entropy) { - delta = sample.jiffies - state->last_time; + delta = sample.jiffies - (long)state->last_time; state->last_time = sample.jiffies; delta2 = delta - state->last_delta; -- 2.7.4