diff options
| -rw-r--r-- | include/linux/dcache.h | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/include/linux/dcache.h b/include/linux/dcache.h index 92c08cf7670e..047c0db5763f 100644 --- a/include/linux/dcache.h +++ b/include/linux/dcache.h | |||
| @@ -464,4 +464,61 @@ static inline unsigned long vfs_pressure_ratio(unsigned long val) | |||
| 464 | { | 464 | { |
| 465 | return mult_frac(val, sysctl_vfs_cache_pressure, 100); | 465 | return mult_frac(val, sysctl_vfs_cache_pressure, 100); |
| 466 | } | 466 | } |
| 467 | |||
| 468 | /** | ||
| 469 | * d_inode - Get the actual inode of this dentry | ||
| 470 | * @dentry: The dentry to query | ||
| 471 | * | ||
| 472 | * This is the helper normal filesystems should use to get at their own inodes | ||
| 473 | * in their own dentries and ignore the layering superimposed upon them. | ||
| 474 | */ | ||
| 475 | static inline struct inode *d_inode(const struct dentry *dentry) | ||
| 476 | { | ||
| 477 | return dentry->d_inode; | ||
| 478 | } | ||
| 479 | |||
| 480 | /** | ||
| 481 | * d_inode_rcu - Get the actual inode of this dentry with ACCESS_ONCE() | ||
| 482 | * @dentry: The dentry to query | ||
| 483 | * | ||
| 484 | * This is the helper normal filesystems should use to get at their own inodes | ||
| 485 | * in their own dentries and ignore the layering superimposed upon them. | ||
| 486 | */ | ||
| 487 | static inline struct inode *d_inode_rcu(const struct dentry *dentry) | ||
| 488 | { | ||
| 489 | return ACCESS_ONCE(dentry->d_inode); | ||
| 490 | } | ||
| 491 | |||
| 492 | /** | ||
| 493 | * d_backing_inode - Get upper or lower inode we should be using | ||
| 494 | * @upper: The upper layer | ||
| 495 | * | ||
| 496 | * This is the helper that should be used to get at the inode that will be used | ||
| 497 | * if this dentry were to be opened as a file. The inode may be on the upper | ||
| 498 | * dentry or it may be on a lower dentry pinned by the upper. | ||
| 499 | * | ||
| 500 | * Normal filesystems should not use this to access their own inodes. | ||
| 501 | */ | ||
| 502 | static inline struct inode *d_backing_inode(const struct dentry *upper) | ||
| 503 | { | ||
| 504 | struct inode *inode = upper->d_inode; | ||
| 505 | |||
| 506 | return inode; | ||
| 507 | } | ||
| 508 | |||
| 509 | /** | ||
| 510 | * d_backing_dentry - Get upper or lower dentry we should be using | ||
| 511 | * @upper: The upper layer | ||
| 512 | * | ||
| 513 | * This is the helper that should be used to get the dentry of the inode that | ||
| 514 | * will be used if this dentry were opened as a file. It may be the upper | ||
| 515 | * dentry or it may be a lower dentry pinned by the upper. | ||
| 516 | * | ||
| 517 | * Normal filesystems should not use this to access their own dentries. | ||
| 518 | */ | ||
| 519 | static inline struct dentry *d_backing_dentry(struct dentry *upper) | ||
| 520 | { | ||
| 521 | return upper; | ||
| 522 | } | ||
| 523 | |||
| 467 | #endif /* __LINUX_DCACHE_H */ | 524 | #endif /* __LINUX_DCACHE_H */ |
