diff options
| author | Ingo Molnar <mingo@elte.hu> | 2010-01-29 03:24:57 -0500 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2010-01-29 04:36:22 -0500 |
| commit | ae7f6711d6231c9ba54feb5ba9856c3775e482f8 (patch) | |
| tree | 89070c82204b2503348e4fd6c51d25a169375545 /fs/hppfs/hppfs.c | |
| parent | 64abebf731df87e6f4ae7d9ffc340bdf0c033e44 (diff) | |
| parent | b23ff0e9330e4b11e18af984d50573598e10e7f9 (diff) | |
Merge branch 'perf/urgent' into perf/core
Merge reason: We want to queue up a dependent patch. Also update to
later -rc's.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'fs/hppfs/hppfs.c')
| -rw-r--r-- | fs/hppfs/hppfs.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/fs/hppfs/hppfs.c b/fs/hppfs/hppfs.c index a5089a6dd67a..7239efc690d8 100644 --- a/fs/hppfs/hppfs.c +++ b/fs/hppfs/hppfs.c | |||
| @@ -646,22 +646,27 @@ static const struct super_operations hppfs_sbops = { | |||
| 646 | static int hppfs_readlink(struct dentry *dentry, char __user *buffer, | 646 | static int hppfs_readlink(struct dentry *dentry, char __user *buffer, |
| 647 | int buflen) | 647 | int buflen) |
| 648 | { | 648 | { |
| 649 | struct dentry *proc_dentry; | 649 | struct dentry *proc_dentry = HPPFS_I(dentry->d_inode)->proc_dentry; |
| 650 | |||
| 651 | proc_dentry = HPPFS_I(dentry->d_inode)->proc_dentry; | ||
| 652 | return proc_dentry->d_inode->i_op->readlink(proc_dentry, buffer, | 650 | return proc_dentry->d_inode->i_op->readlink(proc_dentry, buffer, |
| 653 | buflen); | 651 | buflen); |
| 654 | } | 652 | } |
| 655 | 653 | ||
| 656 | static void *hppfs_follow_link(struct dentry *dentry, struct nameidata *nd) | 654 | static void *hppfs_follow_link(struct dentry *dentry, struct nameidata *nd) |
| 657 | { | 655 | { |
| 658 | struct dentry *proc_dentry; | 656 | struct dentry *proc_dentry = HPPFS_I(dentry->d_inode)->proc_dentry; |
| 659 | |||
| 660 | proc_dentry = HPPFS_I(dentry->d_inode)->proc_dentry; | ||
| 661 | 657 | ||
| 662 | return proc_dentry->d_inode->i_op->follow_link(proc_dentry, nd); | 658 | return proc_dentry->d_inode->i_op->follow_link(proc_dentry, nd); |
| 663 | } | 659 | } |
| 664 | 660 | ||
| 661 | static void hppfs_put_link(struct dentry *dentry, struct nameidata *nd, | ||
| 662 | void *cookie) | ||
| 663 | { | ||
| 664 | struct dentry *proc_dentry = HPPFS_I(dentry->d_inode)->proc_dentry; | ||
| 665 | |||
| 666 | if (proc_dentry->d_inode->i_op->put_link) | ||
| 667 | proc_dentry->d_inode->i_op->put_link(proc_dentry, nd, cookie); | ||
| 668 | } | ||
| 669 | |||
| 665 | static const struct inode_operations hppfs_dir_iops = { | 670 | static const struct inode_operations hppfs_dir_iops = { |
| 666 | .lookup = hppfs_lookup, | 671 | .lookup = hppfs_lookup, |
| 667 | }; | 672 | }; |
| @@ -669,6 +674,7 @@ static const struct inode_operations hppfs_dir_iops = { | |||
| 669 | static const struct inode_operations hppfs_link_iops = { | 674 | static const struct inode_operations hppfs_link_iops = { |
| 670 | .readlink = hppfs_readlink, | 675 | .readlink = hppfs_readlink, |
| 671 | .follow_link = hppfs_follow_link, | 676 | .follow_link = hppfs_follow_link, |
| 677 | .put_link = hppfs_put_link, | ||
| 672 | }; | 678 | }; |
| 673 | 679 | ||
| 674 | static struct inode *get_inode(struct super_block *sb, struct dentry *dentry) | 680 | static struct inode *get_inode(struct super_block *sb, struct dentry *dentry) |
