From 18d4e23df558e38f61d010c2892736faf7cd2241 Mon Sep 17 00:00:00 2001
From: johann <johann>
Date: Mon, 29 Oct 2007 16:02:47 +0000
Subject: [PATCH] Branch b1_6 b=13930 i=johann,adilger

ll_inode_fill_obdo() expects OBD_BRW_WRITE or OBD_BRW_READ as rw argument
rather than READ/WRITE.
---
 lustre/ChangeLog    | 7 +++++++
 lustre/llite/rw26.c | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/lustre/ChangeLog b/lustre/ChangeLog
index 0e9e25dac5..624a3f4679 100644
--- a/lustre/ChangeLog
+++ b/lustre/ChangeLog
@@ -36,6 +36,13 @@ Details    : brw_redo_request can be used for resend requests from ptlrpcd and
 	     ptlrpcd set if request is changed and can be safety changed to use
 	     rq_set directly.
 
+Severity   : normal
+Frequency  : when using O_DIRECT and quotas
+Bugzilla   : 13930
+Description: Incorrect file ownership on O_DIRECT output files
+Details    : block usage reported by 'lfs quota' does not take into account
+             files that have been written with O_DIRECT.
+
 --------------------------------------------------------------------------------
 
 2007-10-26         Cluster File Systems, Inc. <info@clusterfs.com>
diff --git a/lustre/llite/rw26.c b/lustre/llite/rw26.c
index 5ea3a6c0e8..ad71bdba0b 100644
--- a/lustre/llite/rw26.c
+++ b/lustre/llite/rw26.c
@@ -223,7 +223,7 @@ static ssize_t ll_direct_IO_26(int rw, struct kiocb *iocb,
         if (set == NULL)
                 RETURN(-ENOMEM);
 
-        ll_inode_fill_obdo(inode, rw, &oa);
+        ll_inode_fill_obdo(inode, rw == WRITE ? OBD_BRW_WRITE : OBD_BRW_READ, &oa);
         oinfo.oi_oa = &oa;
         oinfo.oi_md = lsm;
 
-- 
GitLab