if (!rpci->nreaders && !rpci->nwriters) rpci->ops = NULL; 
rpc_pipe_release(struct inode *inode, struct file *filp){	struct rpc_inode *rpci = RPC_I(filp->f_dentry->d_inode);	struct rpc_pipe_msg *msg;	down(&inode->i_sem);	if (rpci->ops == NULL)		goto out;	msg = (struct rpc_pipe_msg *)filp->private_data;	if (msg != NULL) {		msg->errno = -EPIPE;		list_del_init(&msg->list);		rpci->ops->destroy_msg(msg);	}	if (filp->f_mode & FMODE_WRITE)		rpci->nwriters --;	if (filp->f_mode & FMODE_READ)		rpci->nreaders --;	if (!rpci->nreaders)		__rpc_purge_upcall(inode, -EPIPE);	if (rpci->ops->release_pipe)		rpci->ops->release_pipe(inode);out:	up(&inode->i_sem);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/747c5534c9a6da4aa87e7cdc2209ea98ea27f381/rpc_pipe.c/clean/net/sunrpc/rpc_pipe.c