Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Bricked
flo
Commits
79ed0226
Commit
79ed0226
authored
16 years ago
by
Al Viro
Browse files
Options
Download
Email Patches
Plain Diff
switch follow_mount()
Signed-off-by:
Al Viro
<
viro@zeniv.linux.org.uk
>
parent
9393bd07
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
8 deletions
+8
-8
fs/namei.c
fs/namei.c
+8
-8
No files found.
fs/namei.c
View file @
79ed0226
...
...
@@ -715,16 +715,16 @@ static int __follow_mount(struct path *path)
return
res
;
}
static
void
follow_mount
(
struct
vfsmount
**
mnt
,
struct
dentry
**
dentry
)
static
void
follow_mount
(
struct
path
*
path
)
{
while
(
d_mountpoint
(
*
dentry
))
{
struct
vfsmount
*
mounted
=
lookup_mnt
(
*
mnt
,
*
dentry
);
while
(
d_mountpoint
(
path
->
dentry
))
{
struct
vfsmount
*
mounted
=
lookup_mnt
(
path
->
mnt
,
path
->
dentry
);
if
(
!
mounted
)
break
;
dput
(
*
dentry
);
mntput
(
*
mnt
);
*
mnt
=
mounted
;
*
dentry
=
dget
(
mounted
->
mnt_root
);
dput
(
path
->
dentry
);
mntput
(
path
->
mnt
);
path
->
mnt
=
mounted
;
path
->
dentry
=
dget
(
mounted
->
mnt_root
);
}
}
...
...
@@ -779,7 +779,7 @@ static __always_inline void follow_dotdot(struct nameidata *nd)
mntput
(
nd
->
path
.
mnt
);
nd
->
path
.
mnt
=
parent
;
}
follow_mount
(
&
nd
->
path
.
mnt
,
&
nd
->
path
.
dentry
);
follow_mount
(
&
nd
->
path
);
}
/*
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment