From a6abf7fdcb4ba3691e29e5d3937e7af9f4dce2d9 Mon Sep 17 00:00:00 2001 From: panda Date: Mon, 5 Oct 2009 15:43:39 +0000 Subject: [PATCH] b=20575 o=Tom Wang i=Johann Lombardi i=Andrew Perepechko avoid overflow in ll_readahead --- lustre/llite/rw.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lustre/llite/rw.c b/lustre/llite/rw.c index d97ade6..2d382c5 100644 --- a/lustre/llite/rw.c +++ b/lustre/llite/rw.c @@ -1615,8 +1615,8 @@ static int ll_readahead(struct ll_readahead_state *ras, /* Enlarge the RA window to encompass the full read */ if (bead != NULL && ras->ras_window_start + ras->ras_window_len < bead->lrr_start + bead->lrr_count) { - obd_off read_end = (bead->lrr_start + bead->lrr_count) << - CFS_PAGE_SHIFT; + obd_off read_end = ((obd_off)(bead->lrr_start + + bead->lrr_count))<ras_window_len = ((read_end + 1) >> CFS_PAGE_SHIFT) - -- 1.8.3.1