Whamcloud - gitweb
Branch HEAD
authorjohann <johann>
Tue, 30 Oct 2007 21:29:15 +0000 (21:29 +0000)
committerjohann <johann>
Tue, 30 Oct 2007 21:29:15 +0000 (21:29 +0000)
b=14007
i=nathan
i=tappro

check for MDS_OPEN_OWNEROVERRIDE in attr_pack()/attr_unpack()
since it is used in mds_fix_attr() (see bug 5781) for NFS.

lustre/mdc/mdc_lib.c
lustre/mds/mds_lib.c
lustre/mdt/mdt_lib.c

index fd5aaea..d3371cc 100644 (file)
@@ -262,6 +262,9 @@ static inline __u64 attr_pack(unsigned int ia_valid) {
                 sa_valid |= MDS_ATTR_FROM_OPEN;
         if (ia_valid & ATTR_BLOCKS)
                 sa_valid |= MDS_ATTR_BLOCKS;
+        if (ia_valid & MDS_OPEN_OWNEROVERRIDE)
+                /* NFSD hack (see bug 5781) */
+                sa_valid |= MDS_OPEN_OWNEROVERRIDE;
         return sa_valid;
 }
 
index f1e8e0e..bd3f2c5 100644 (file)
@@ -121,6 +121,8 @@ static inline unsigned int attr_unpack(__u64 sa_valid) {
                 ia_valid |= ATTR_FROM_OPEN;
         if (sa_valid & MDS_ATTR_BLOCKS)
                 ia_valid |= ATTR_BLOCKS;
+        if (sa_valid & MDS_OPEN_OWNEROVERRIDE)
+                ia_valid |= MDS_OPEN_OWNEROVERRIDE;
         return ia_valid;
 }
 
index 4d65b2b..bc04b2b 100644 (file)
@@ -702,6 +702,8 @@ static inline unsigned int attr_unpack(__u64 sa_valid) {
                 ia_valid |= ATTR_FROM_OPEN;
         if (sa_valid & MDS_ATTR_BLOCKS)
                 ia_valid |= ATTR_BLOCKS;
+        if (sa_valid & MDS_OPEN_OWNEROVERRIDE)
+                ia_valid |= MDS_OPEN_OWNEROVERRIDE;
         return ia_valid;
 }