Would happen if an inode is dirty but whatever happened is not something
that can be written out to OrangeFS.

Signed-off-by: Martin Brandenburg <mar...@omnibond.com>
---
 fs/orangefs/orangefs-utils.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/fs/orangefs/orangefs-utils.c b/fs/orangefs/orangefs-utils.c
index 902ebd1599e1..de63bb710e38 100644
--- a/fs/orangefs/orangefs-utils.c
+++ b/fs/orangefs/orangefs-utils.c
@@ -435,6 +435,11 @@ int orangefs_inode_setattr(struct inode *inode)
        copy_attributes_from_inode(inode,
            &new_op->upcall.req.setattr.attributes);
        orangefs_inode->attr_valid = 0;
+       if (!new_op->upcall.req.setattr.attributes.mask) {
+               spin_unlock(&inode->i_lock);
+               op_release(new_op);
+               return 0;
+       }
        spin_unlock(&inode->i_lock);
 
        ret = service_operation(new_op, __func__,
-- 
2.19.0

Reply via email to