ret = copy_to_user(buf, &proto_ver, sizeof(__s32));
if (ret != 0)
goto error;
- ret = copy_to_user(buf+sizeof(__s32), &magic, sizeof(__s32));
+ ret = copy_to_user(buf + sizeof(__s32), &magic, sizeof(__s32));
if (ret != 0)
goto error;
- ret = copy_to_user(buf+2 * sizeof(__s32), &cur_op->tag, sizeof(__u64));
+ ret = copy_to_user(buf + 2 * sizeof(__s32),
+ &cur_op->tag,
+ sizeof(__u64));
if (ret != 0)
goto error;
- ret = copy_to_user(buf+2*sizeof(__s32)+sizeof(__u64), &cur_op->upcall,
- sizeof(struct orangefs_upcall_s));
+ ret = copy_to_user(buf + 2 * sizeof(__s32) + sizeof(__u64),
+ &cur_op->upcall,
+ sizeof(struct orangefs_upcall_s));
if (ret != 0)
goto error;
(unsigned int) MAX_DEV_REQ_DOWNSIZE);
return -EFAULT;
}
-
+
if (!copy_from_iter_full(&head, head_size, iter)) {
gossip_err("%s: failed to copy head.\n", __func__);
return -EFAULT;
goto wakeup;
/*
- * We've successfully peeled off the head and the downcall.
+ * We've successfully peeled off the head and the downcall.
* Something has gone awry if total doesn't equal the
* sum of head_size, downcall_size and trailer_size.
*/
wakeup:
/*
* Return to vfs waitqueue, and back to service_operation
- * through wait_for_matching_downcall.
+ * through wait_for_matching_downcall.
*/
spin_lock(&op->lock);
if (unlikely(op_is_cancel(op))) {
new_op->upcall.req.truncate.refn = orangefs_inode->refn;
new_op->upcall.req.truncate.size = (__s64) iattr->ia_size;
- ret = service_operation(new_op, __func__,
- get_interruptible_flag(inode));
+ ret = service_operation(new_op,
+ __func__,
+ get_interruptible_flag(inode));
/*
* the truncate has no downcall members to retrieve, but
* the status value tells us if it went through ok or not
*/
- gossip_debug(GOSSIP_INODE_DEBUG,
- "orangefs: orangefs_truncate got return value of %d\n",
- ret);
+ gossip_debug(GOSSIP_INODE_DEBUG, "%s: ret:%d:\n", __func__, ret);
op_release(new_op);
struct inode *inode = dentry->d_inode;
gossip_debug(GOSSIP_INODE_DEBUG,
- "orangefs_setattr: called on %pd\n",
- dentry);
+ "%s: called on %pd\n",
+ __func__,
+ dentry);
ret = setattr_prepare(dentry, iattr);
if (ret)
ret = orangefs_inode_setattr(inode, iattr);
gossip_debug(GOSSIP_INODE_DEBUG,
- "orangefs_setattr: inode_setattr returned %d\n",
- ret);
+ "%s: orangefs_inode_setattr returned %d\n",
+ __func__,
+ ret);
if (!ret && (iattr->ia_valid & ATTR_MODE))
/* change mod on a file that has ACLs */
ret = posix_acl_chmod(inode, inode->i_mode);
out:
- gossip_debug(GOSSIP_INODE_DEBUG, "orangefs_setattr: returning %d\n", ret);
+ gossip_debug(GOSSIP_INODE_DEBUG, "%s: ret:%d:\n", __func__, ret);
return ret;
}
return orangefs_inode_setattr(inode, &iattr);
}
-/* ORANGEDS2 implementation of VFS inode operations for files */
+/* ORANGEFS2 implementation of VFS inode operations for files */
static const struct inode_operations orangefs_file_inode_operations = {
.get_acl = orangefs_get_acl,
.set_acl = orangefs_set_acl,
}
/*
- * Given a ORANGEFS object identifier (fsid, handle), convert it into a ino_t type
- * that will be used as a hash-index from where the handle will
+ * Given an ORANGEFS object identifier (fsid, handle), convert it into
+ * a ino_t type that will be used as a hash-index from where the handle will
* be searched for in the VFS hash table of inodes.
*/
static inline ino_t orangefs_handle_hash(struct orangefs_object_kref *ref)
struct orangefs_inode_s *orangefs_inode = NULL;
orangefs_inode = ORANGEFS_I(inode);
- return (!ORANGEFS_khandle_cmp(&(orangefs_inode->refn.khandle), &(ref->khandle))
- && orangefs_inode->refn.fs_id == ref->fs_id);
+ /* test handles and fs_ids... */
+ return (!ORANGEFS_khandle_cmp(&(orangefs_inode->refn.khandle),
+ &(ref->khandle)) &&
+ orangefs_inode->refn.fs_id == ref->fs_id);
}
/*
* file handle.
*
* @sb: the file system super block instance.
- * @ref: The ORANGEFS object for which we are trying to locate an inode structure.
+ * @ref: The ORANGEFS object for which we are trying to locate an inode.
*/
-struct inode *orangefs_iget(struct super_block *sb, struct orangefs_object_kref *ref)
+struct inode *orangefs_iget(struct super_block *sb,
+ struct orangefs_object_kref *ref)
{
struct inode *inode = NULL;
unsigned long hash;
int error;
hash = orangefs_handle_hash(ref);
- inode = iget5_locked(sb, hash, orangefs_test_inode, orangefs_set_inode, ref);
+ inode = iget5_locked(sb,
+ hash,
+ orangefs_test_inode,
+ orangefs_set_inode,
+ ref);
if (!inode || !(inode->i_state & I_NEW))
return inode;
attrs->mask |= ORANGEFS_ATTR_SYS_CTIME;
/*
- * ORANGEFS cannot set size with a setattr operation. Probably not likely
- * to be requested through the VFS, but just in case, don't worry about
- * ATTR_SIZE
+ * ORANGEFS cannot set size with a setattr operation. Probably not
+ * likely to be requested through the VFS, but just in case, don't
+ * worry about ATTR_SIZE
*/
if (iattr->ia_valid & ATTR_MODE) {
tmp_mode -= S_ISVTX;
} else {
gossip_debug(GOSSIP_UTILS_DEBUG,
- "User attempted to set sticky bit on non-root directory; returning EINVAL.\n");
+ "%s: setting sticky bit not supported.\n",
+ __func__);
return -EINVAL;
}
}
if (tmp_mode & (S_ISUID)) {
gossip_debug(GOSSIP_UTILS_DEBUG,
- "Attempting to set setuid bit (not supported); returning EINVAL.\n");
+ "%s: setting setuid bit not supported.\n",
+ __func__);
return -EINVAL;
}
error_code = -ETIMEDOUT;
} else {
/* assume a default error code */
- gossip_err("orangefs: warning: got error code without errno equivalent: %d.\n", error_code);
+ gossip_err("%s: bad error code :%d:.\n",
+ __func__,
+ error_code);
error_code = -EINVAL;
}
* there is a bug somewhere.
*/
} else {
- gossip_err("orangefs: orangefs_normalize_to_errno: got error code which is not from ORANGEFS.\n");
+ gossip_err("%s: unknown error code.\n", __func__);
error_code = -EINVAL;
}
return error_code;