From 7e95bec1902630ddf61fa480accdd044e7b9a1dc Mon Sep 17 00:00:00 2001 From: panda Date: Mon, 5 Oct 2009 15:39:55 +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 663deca..5bf009c 100644 --- a/lustre/llite/rw.c +++ b/lustre/llite/rw.c @@ -1733,8 +1733,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