1328970deSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */ 2*fa60ce2cSMasahiro Yamada /* 3ccd979bdSMark Fasheh * dcache.h 4ccd979bdSMark Fasheh * 5ccd979bdSMark Fasheh * Function prototypes 6ccd979bdSMark Fasheh * 7ccd979bdSMark Fasheh * Copyright (C) 2002, 2004 Oracle. All rights reserved. 8ccd979bdSMark Fasheh */ 9ccd979bdSMark Fasheh 10ccd979bdSMark Fasheh #ifndef OCFS2_DCACHE_H 11ccd979bdSMark Fasheh #define OCFS2_DCACHE_H 12ccd979bdSMark Fasheh 13d8fba0ffSAl Viro extern const struct dentry_operations ocfs2_dentry_ops; 14ccd979bdSMark Fasheh 15d680efe9SMark Fasheh struct ocfs2_dentry_lock { 16d680efe9SMark Fasheh unsigned int dl_count; 17d680efe9SMark Fasheh u64 dl_parent_blkno; 18d680efe9SMark Fasheh 19d680efe9SMark Fasheh /* 20d680efe9SMark Fasheh * The ocfs2_dentry_lock keeps an inode reference until 21d680efe9SMark Fasheh * dl_lockres has been destroyed. This is usually done in 22d680efe9SMark Fasheh * ->d_iput() anyway, so there should be minimal impact. 23d680efe9SMark Fasheh */ 24d680efe9SMark Fasheh struct inode *dl_inode; 25d680efe9SMark Fasheh struct ocfs2_lock_res dl_lockres; 26d680efe9SMark Fasheh }; 27d680efe9SMark Fasheh 2880c05846SMark Fasheh int ocfs2_dentry_attach_lock(struct dentry *dentry, struct inode *inode, 290027dd5bSMark Fasheh u64 parent_blkno); 30d680efe9SMark Fasheh 3180c05846SMark Fasheh void ocfs2_dentry_lock_put(struct ocfs2_super *osb, 3280c05846SMark Fasheh struct ocfs2_dentry_lock *dl); 3380c05846SMark Fasheh 3480c05846SMark Fasheh struct dentry *ocfs2_find_local_alias(struct inode *inode, u64 parent_blkno, 3580c05846SMark Fasheh int skip_unhashed); 3680c05846SMark Fasheh 3780c05846SMark Fasheh void ocfs2_dentry_move(struct dentry *dentry, struct dentry *target, 3880c05846SMark Fasheh struct inode *old_dir, struct inode *new_dir); 39d680efe9SMark Fasheh 40d680efe9SMark Fasheh extern spinlock_t dentry_attach_lock; 415e98d492SGoldwyn Rodrigues void ocfs2_dentry_attach_gen(struct dentry *dentry); 42d680efe9SMark Fasheh 43ccd979bdSMark Fasheh #endif /* OCFS2_DCACHE_H */ 44