From 3f3d9f2bee2f6d7c48c5aa25a896b34e6bf095ed Mon Sep 17 00:00:00 2001 From: johann Date: Tue, 5 May 2009 19:52:44 +0000 Subject: [PATCH] Branch b1_6 b=18206 i=green i=bzzz Disable per-stripe locking for O_DIRECT. --- lustre/llite/file.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lustre/llite/file.c b/lustre/llite/file.c index 07d7814..b9f1417 100644 --- a/lustre/llite/file.c +++ b/lustre/llite/file.c @@ -1455,7 +1455,7 @@ static ssize_t ll_file_aio_read(struct kiocb *iocb, const struct iovec *iov, } repeat: - if (sbi->ll_max_rw_chunk != 0) { + if (sbi->ll_max_rw_chunk != 0 && !(file->f_flags & O_DIRECT)) { /* first, let's know the end of the current stripe */ end = *ppos; obd_extent_calc(sbi->ll_osc_exp, lsm, OBD_CALC_STRIPE_END, @@ -1696,7 +1696,7 @@ repeat: lock_end = OBD_OBJECT_EOF; iov_copy = (struct iovec *)iov; nrsegs_copy = nr_segs; - } else if (sbi->ll_max_rw_chunk != 0) { + } else if (sbi->ll_max_rw_chunk != 0 && !(file->f_flags & O_DIRECT)) { /* first, let's know the end of the current stripe */ end = *ppos; obd_extent_calc(sbi->ll_osc_exp, lsm, OBD_CALC_STRIPE_END, -- 1.8.3.1