#include <linux/blkdev.h>
#include <linux/device.h>
#include <linux/sizes.h>
#include <linux/slab.h>
#include <linux/fs.h>
#include <linux/mm.h>
#include "nd-core.h"
#include "btt.h"
#include "nd.h"
static void nd_btt_release(struct device *dev)
{ … }
struct nd_btt *to_nd_btt(struct device *dev)
{ … }
EXPORT_SYMBOL(…);
static const unsigned long btt_lbasize_supported[] = …;
static ssize_t sector_size_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t sector_size_store(struct device *dev,
struct device_attribute *attr, const char *buf, size_t len)
{ … }
static DEVICE_ATTR_RW(sector_size);
static ssize_t uuid_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t uuid_store(struct device *dev,
struct device_attribute *attr, const char *buf, size_t len)
{ … }
static DEVICE_ATTR_RW(uuid);
static ssize_t namespace_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t namespace_store(struct device *dev,
struct device_attribute *attr, const char *buf, size_t len)
{ … }
static DEVICE_ATTR_RW(namespace);
static ssize_t size_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(size);
static ssize_t log_zero_flags_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(log_zero_flags);
static struct attribute *nd_btt_attributes[] = …;
static struct attribute_group nd_btt_attribute_group = …;
static const struct attribute_group *nd_btt_attribute_groups[] = …;
static const struct device_type nd_btt_device_type = …;
bool is_nd_btt(struct device *dev)
{ … }
EXPORT_SYMBOL(…);
static struct lock_class_key nvdimm_btt_key;
static struct device *__nd_btt_create(struct nd_region *nd_region,
unsigned long lbasize, uuid_t *uuid,
struct nd_namespace_common *ndns)
{ … }
struct device *nd_btt_create(struct nd_region *nd_region)
{ … }
bool nd_btt_arena_is_valid(struct nd_btt *nd_btt, struct btt_sb *super)
{ … }
EXPORT_SYMBOL(…);
int nd_btt_version(struct nd_btt *nd_btt, struct nd_namespace_common *ndns,
struct btt_sb *btt_sb)
{ … }
EXPORT_SYMBOL(…);
static int __nd_btt_probe(struct nd_btt *nd_btt,
struct nd_namespace_common *ndns, struct btt_sb *btt_sb)
{ … }
int nd_btt_probe(struct device *dev, struct nd_namespace_common *ndns)
{ … }
EXPORT_SYMBOL(…);