#undef DEBUG
#include <linux/pagemap.h>
#include <linux/namei.h>
#include <linux/backing-dev.h>
#include <linux/capability.h>
#include <linux/sched.h>
#include <linux/lockdep.h>
#include <linux/slab.h>
#include <linux/configfs.h>
#include "configfs_internal.h"
#ifdef CONFIG_LOCKDEP
static struct lock_class_key default_group_class[MAX_LOCK_DEPTH];
#endif
static const struct inode_operations configfs_inode_operations = …;
int configfs_setattr(struct mnt_idmap *idmap, struct dentry *dentry,
struct iattr *iattr)
{ … }
static inline void set_default_inode_attr(struct inode * inode, umode_t mode)
{ … }
static inline void set_inode_attr(struct inode * inode, struct iattr * iattr)
{ … }
struct inode *configfs_new_inode(umode_t mode, struct configfs_dirent *sd,
struct super_block *s)
{ … }
#ifdef CONFIG_LOCKDEP
static void configfs_set_inode_lock_class(struct configfs_dirent *sd,
struct inode *inode)
{ … }
#else
static void configfs_set_inode_lock_class(struct configfs_dirent *sd,
struct inode *inode)
{
}
#endif
struct inode *configfs_create(struct dentry *dentry, umode_t mode)
{ … }
const unsigned char * configfs_get_name(struct configfs_dirent *sd)
{ … }
void configfs_drop_dentry(struct configfs_dirent * sd, struct dentry * parent)
{ … }
void configfs_hash_and_remove(struct dentry * dir, const char * name)
{ … }