linux/fs/btrfs/export.c

// SPDX-License-Identifier: GPL-2.0

#include <linux/fs.h>
#include <linux/types.h>
#include "ctree.h"
#include "disk-io.h"
#include "btrfs_inode.h"
#include "export.h"
#include "accessors.h"
#include "super.h"

#define BTRFS_FID_SIZE_NON_CONNECTABLE
#define BTRFS_FID_SIZE_CONNECTABLE
#define BTRFS_FID_SIZE_CONNECTABLE_ROOT

static int btrfs_encode_fh(struct inode *inode, u32 *fh, int *max_len,
			   struct inode *parent)
{}

/*
 * Read dentry of inode with @objectid from filesystem root @root_objectid.
 *
 * @sb:             the filesystem super block
 * @objectid:       inode objectid
 * @root_objectid:  object id of the subvolume root where to look up the inode
 * @generation:     optional, if not zero, verify that the found inode
 *                  generation matches
 *
 * Return dentry alias for the inode, otherwise an error. In case the
 * generation does not match return ESTALE.
 */
struct dentry *btrfs_get_dentry(struct super_block *sb, u64 objectid,
				u64 root_objectid, u64 generation)
{}

static struct dentry *btrfs_fh_to_parent(struct super_block *sb, struct fid *fh,
					 int fh_len, int fh_type)
{}

static struct dentry *btrfs_fh_to_dentry(struct super_block *sb, struct fid *fh,
					 int fh_len, int fh_type)
{}

struct dentry *btrfs_get_parent(struct dentry *child)
{}

static int btrfs_get_name(struct dentry *parent, char *name,
			  struct dentry *child)
{}

const struct export_operations btrfs_export_ops =;