return -ERESTARTNOINTR; 
return -EINTR; 
static ssize_t fuse_listxattr(struct dentry *entry, char *list, size_t size){	struct inode *inode = entry->d_inode;	struct fuse_conn *fc = get_fuse_conn(inode);	struct fuse_req *req;	struct fuse_getxattr_in inarg;	struct fuse_getxattr_out outarg;	ssize_t ret;	if (fc->no_listxattr)		return -EOPNOTSUPP;	req = fuse_get_request(fc);	if (!req)		return -ERESTARTNOINTR;	memset(&inarg, 0, sizeof(inarg));	inarg.size = size;	req->in.h.opcode = FUSE_LISTXATTR;	req->in.h.nodeid = get_node_id(inode);	req->inode = inode;	req->in.numargs = 1;	req->in.args[0].size = sizeof(inarg);	req->in.args[0].value = &inarg;	/* This is really two different operations rolled into one */	req->out.numargs = 1;	if (size) {		req->out.argvar = 1;		req->out.args[0].size = size;		req->out.args[0].value = list;	} else {		req->out.args[0].size = sizeof(outarg);		req->out.args[0].value = &outarg;	}	request_send(fc, req);	ret = req->out.h.error;	if (!ret)		ret = size ? req->out.args[0].size : outarg.size;	else {		if (ret == -ENOSYS) {			fc->no_listxattr = 1;			ret = -EOPNOTSUPP;		}	}	fuse_put_request(fc, req);	return ret;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/7c352bdf048811b8128019ffc1e886161e09c11c/dir.c/clean/fs/fuse/dir.c