Orangefs: make some gossip statements more helpful.
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
This commit is contained in:
parent
897c5df6cf
commit
5253487e04
3 changed files with 41 additions and 21 deletions
|
@ -443,8 +443,8 @@ struct inode *orangefs_new_inode(struct super_block *sb, struct inode *dir,
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
gossip_debug(GOSSIP_INODE_DEBUG,
|
gossip_debug(GOSSIP_INODE_DEBUG,
|
||||||
"orangefs_get_custom_inode_common: called\n"
|
"%s:(sb is %p | MAJOR(dev)=%u | MINOR(dev)=%u mode=%o)\n",
|
||||||
"(sb is %p | MAJOR(dev)=%u | MINOR(dev)=%u mode=%o)\n",
|
__func__,
|
||||||
sb,
|
sb,
|
||||||
MAJOR(dev),
|
MAJOR(dev),
|
||||||
MINOR(dev),
|
MINOR(dev),
|
||||||
|
|
|
@ -24,7 +24,9 @@ static int orangefs_create(struct inode *dir,
|
||||||
struct inode *inode;
|
struct inode *inode;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
gossip_debug(GOSSIP_NAME_DEBUG, "%s: called\n", __func__);
|
gossip_debug(GOSSIP_NAME_DEBUG, "%s: %s\n",
|
||||||
|
__func__,
|
||||||
|
dentry->d_name.name);
|
||||||
|
|
||||||
new_op = op_alloc(ORANGEFS_VFS_OP_CREATE);
|
new_op = op_alloc(ORANGEFS_VFS_OP_CREATE);
|
||||||
if (!new_op)
|
if (!new_op)
|
||||||
|
@ -41,35 +43,39 @@ static int orangefs_create(struct inode *dir,
|
||||||
ret = service_operation(new_op, __func__, get_interruptible_flag(dir));
|
ret = service_operation(new_op, __func__, get_interruptible_flag(dir));
|
||||||
|
|
||||||
gossip_debug(GOSSIP_NAME_DEBUG,
|
gossip_debug(GOSSIP_NAME_DEBUG,
|
||||||
"Create Got ORANGEFS handle %pU on fsid %d (ret=%d)\n",
|
"%s: %s: handle:%pU: fsid:%d: new_op:%p: ret:%d:\n",
|
||||||
|
__func__,
|
||||||
|
dentry->d_name.name,
|
||||||
&new_op->downcall.resp.create.refn.khandle,
|
&new_op->downcall.resp.create.refn.khandle,
|
||||||
new_op->downcall.resp.create.refn.fs_id, ret);
|
new_op->downcall.resp.create.refn.fs_id,
|
||||||
|
new_op,
|
||||||
|
ret);
|
||||||
|
|
||||||
if (ret < 0) {
|
if (ret < 0)
|
||||||
gossip_debug(GOSSIP_NAME_DEBUG,
|
|
||||||
"%s: failed with error code %d\n",
|
|
||||||
__func__, ret);
|
|
||||||
goto out;
|
goto out;
|
||||||
}
|
|
||||||
|
|
||||||
inode = orangefs_new_inode(dir->i_sb, dir, S_IFREG | mode, 0,
|
inode = orangefs_new_inode(dir->i_sb, dir, S_IFREG | mode, 0,
|
||||||
&new_op->downcall.resp.create.refn);
|
&new_op->downcall.resp.create.refn);
|
||||||
if (IS_ERR(inode)) {
|
if (IS_ERR(inode)) {
|
||||||
gossip_err("*** Failed to allocate orangefs file inode\n");
|
gossip_err("%s: Failed to allocate inode for file :%s:\n",
|
||||||
|
__func__,
|
||||||
|
dentry->d_name.name);
|
||||||
ret = PTR_ERR(inode);
|
ret = PTR_ERR(inode);
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
gossip_debug(GOSSIP_NAME_DEBUG,
|
gossip_debug(GOSSIP_NAME_DEBUG,
|
||||||
"Assigned file inode new number of %pU\n",
|
"%s: Assigned inode :%pU: for file :%s:\n",
|
||||||
get_khandle_from_ino(inode));
|
__func__,
|
||||||
|
get_khandle_from_ino(inode),
|
||||||
|
dentry->d_name.name);
|
||||||
|
|
||||||
d_instantiate(dentry, inode);
|
d_instantiate(dentry, inode);
|
||||||
unlock_new_inode(inode);
|
unlock_new_inode(inode);
|
||||||
|
|
||||||
gossip_debug(GOSSIP_NAME_DEBUG,
|
gossip_debug(GOSSIP_NAME_DEBUG,
|
||||||
"Inode (Regular File) %pU -> %s\n",
|
"%s: dentry instantiated for %s\n",
|
||||||
get_khandle_from_ino(inode),
|
__func__,
|
||||||
dentry->d_name.name);
|
dentry->d_name.name);
|
||||||
|
|
||||||
SetMtimeFlag(parent);
|
SetMtimeFlag(parent);
|
||||||
|
@ -78,7 +84,11 @@ static int orangefs_create(struct inode *dir,
|
||||||
ret = 0;
|
ret = 0;
|
||||||
out:
|
out:
|
||||||
op_release(new_op);
|
op_release(new_op);
|
||||||
gossip_debug(GOSSIP_NAME_DEBUG, "%s: returning %d\n", __func__, ret);
|
gossip_debug(GOSSIP_NAME_DEBUG,
|
||||||
|
"%s: %s: returning %d\n",
|
||||||
|
__func__,
|
||||||
|
dentry->d_name.name,
|
||||||
|
ret);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -229,7 +239,11 @@ static int orangefs_unlink(struct inode *dir, struct dentry *dentry)
|
||||||
ret = service_operation(new_op, "orangefs_unlink",
|
ret = service_operation(new_op, "orangefs_unlink",
|
||||||
get_interruptible_flag(inode));
|
get_interruptible_flag(inode));
|
||||||
|
|
||||||
/* when request is serviced properly, free req op struct */
|
gossip_debug(GOSSIP_NAME_DEBUG,
|
||||||
|
"%s: service_operation returned:%d:\n",
|
||||||
|
__func__,
|
||||||
|
ret);
|
||||||
|
|
||||||
op_release(new_op);
|
op_release(new_op);
|
||||||
|
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
|
|
|
@ -67,11 +67,10 @@ int service_operation(struct orangefs_kernel_op_s *op,
|
||||||
retry_servicing:
|
retry_servicing:
|
||||||
op->downcall.status = 0;
|
op->downcall.status = 0;
|
||||||
gossip_debug(GOSSIP_WAIT_DEBUG,
|
gossip_debug(GOSSIP_WAIT_DEBUG,
|
||||||
"orangefs: service_operation: %s %p\n",
|
"%s: %s op:%p: process:%s: pid:%d:\n",
|
||||||
|
__func__,
|
||||||
op_name,
|
op_name,
|
||||||
op);
|
op,
|
||||||
gossip_debug(GOSSIP_WAIT_DEBUG,
|
|
||||||
"orangefs: operation posted by process: %s, pid: %i\n",
|
|
||||||
current->comm,
|
current->comm,
|
||||||
current->pid);
|
current->pid);
|
||||||
|
|
||||||
|
@ -122,6 +121,13 @@ int service_operation(struct orangefs_kernel_op_s *op,
|
||||||
|
|
||||||
ret = wait_for_matching_downcall(op, timeout,
|
ret = wait_for_matching_downcall(op, timeout,
|
||||||
flags & ORANGEFS_OP_INTERRUPTIBLE);
|
flags & ORANGEFS_OP_INTERRUPTIBLE);
|
||||||
|
|
||||||
|
gossip_debug(GOSSIP_WAIT_DEBUG,
|
||||||
|
"%s: wait_for_matching_downcall returned %d for %p\n",
|
||||||
|
__func__,
|
||||||
|
ret,
|
||||||
|
op);
|
||||||
|
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
spin_unlock(&op->lock);
|
spin_unlock(&op->lock);
|
||||||
/* got matching downcall; make sure status is in errno format */
|
/* got matching downcall; make sure status is in errno format */
|
||||||
|
|
Loading…
Reference in a new issue