Commit 8219cb58 authored by Al Viro's avatar Al Viro
Browse files

kill d_{is,set}_fallthru()



Introduced in 2015 and never had any in-tree users...

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 0bec65a8
Loading
Loading
Loading
Loading
+2 −18
Original line number Diff line number Diff line
@@ -344,7 +344,7 @@ static inline void __d_set_inode_and_type(struct dentry *dentry,

	dentry->d_inode = inode;
	flags = READ_ONCE(dentry->d_flags);
	flags &= ~(DCACHE_ENTRY_TYPE | DCACHE_FALLTHRU);
	flags &= ~DCACHE_ENTRY_TYPE;
	flags |= type_flags;
	smp_store_release(&dentry->d_flags, flags);
}
@@ -353,7 +353,7 @@ static inline void __d_clear_type_and_inode(struct dentry *dentry)
{
	unsigned flags = READ_ONCE(dentry->d_flags);

	flags &= ~(DCACHE_ENTRY_TYPE | DCACHE_FALLTHRU);
	flags &= ~DCACHE_ENTRY_TYPE;
	WRITE_ONCE(dentry->d_flags, flags);
	dentry->d_inode = NULL;
	if (dentry->d_flags & DCACHE_LRU_LIST)
@@ -1936,22 +1936,6 @@ void d_set_d_op(struct dentry *dentry, const struct dentry_operations *op)
}
EXPORT_SYMBOL(d_set_d_op);


/*
 * d_set_fallthru - Mark a dentry as falling through to a lower layer
 * @dentry - The dentry to mark
 *
 * Mark a dentry as falling through to the lower layer (as set with
 * d_pin_lower()).  This flag may be recorded on the medium.
 */
void d_set_fallthru(struct dentry *dentry)
{
	spin_lock(&dentry->d_lock);
	dentry->d_flags |= DCACHE_FALLTHRU;
	spin_unlock(&dentry->d_lock);
}
EXPORT_SYMBOL(d_set_fallthru);

static unsigned d_flags_for_inode(struct inode *inode)
{
	unsigned add_flags = DCACHE_REGULAR_TYPE;
+4 −13
Original line number Diff line number Diff line
@@ -195,16 +195,15 @@ struct dentry_operations {
#define DCACHE_LRU_LIST			BIT(19)

#define DCACHE_ENTRY_TYPE		(7 << 20) /* bits 20..22 are for storing type: */
#define DCACHE_MISS_TYPE		(0 << 20) /* Negative dentry (maybe fallthru to nowhere) */
#define DCACHE_MISS_TYPE		(0 << 20) /* Negative dentry */
#define DCACHE_WHITEOUT_TYPE		(1 << 20) /* Whiteout dentry (stop pathwalk) */
#define DCACHE_DIRECTORY_TYPE		(2 << 20) /* Normal directory */
#define DCACHE_AUTODIR_TYPE		(3 << 20) /* Lookupless directory (presumed automount) */
#define DCACHE_REGULAR_TYPE		(4 << 20) /* Regular file type (or fallthru to such) */
#define DCACHE_SPECIAL_TYPE		(5 << 20) /* Other file type (or fallthru to such) */
#define DCACHE_SYMLINK_TYPE		(6 << 20) /* Symlink (or fallthru to such) */
#define DCACHE_REGULAR_TYPE		(4 << 20) /* Regular file type */
#define DCACHE_SPECIAL_TYPE		(5 << 20) /* Other file type */
#define DCACHE_SYMLINK_TYPE		(6 << 20) /* Symlink */

#define DCACHE_MAY_FREE			BIT(23)
#define DCACHE_FALLTHRU			BIT(24) /* Fall through to lower layer */
#define DCACHE_NOKEY_NAME		BIT(25) /* Encrypted name encoded without key */
#define DCACHE_OP_REAL			BIT(26)

@@ -489,14 +488,6 @@ static inline int simple_positive(const struct dentry *dentry)
	return d_really_is_positive(dentry) && !d_unhashed(dentry);
}

extern void d_set_fallthru(struct dentry *dentry);

static inline bool d_is_fallthru(const struct dentry *dentry)
{
	return dentry->d_flags & DCACHE_FALLTHRU;
}


extern int sysctl_vfs_cache_pressure;

static inline unsigned long vfs_pressure_ratio(unsigned long val)