Patch needed for symlink handling
Bug #44783 reported by
Niklas Edmundsson
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux-restricted-modules-2.6.15 (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
linux-source-2.6.15 (Ubuntu) |
Fix Released
|
Medium
|
Unassigned |
Bug Description
The following patch is needed in order to be able to use 2.6.15 with the lustre patchless client, and
probably for other filesystems as well. Without it recursive symlinks will work incorrectly. It's not needed for 2.6.16, so presumably it's already applied there.
Changed in linux-source-2.6.15: | |
status: | Unconfirmed → Fix Committed |
Changed in linux-source-2.6.15: | |
status: | Fix Committed → Fix Released |
Changed in linux-restricted-modules-2.6.15: | |
status: | New → Fix Released |
To post a comment you must log in.
Cut&paste from the attachment:
------- ----8<- ------- ---
When walking a path, the LOOKUP_CONTINUE flag is used by some filesystems
(for instance NFS) in order to determine whether or not it is looking up
the last component of the path. It this is the case, it may have to look
at the intent information in order to perform various tasks such as atomic
open.
A problem currently occurs when link_path_walk() hits a symlink. In this
case LOOKUP_CONTINUE may be cleared prematurely when we hit the end of the
path passed by __vfs_follow_link() (i.e. the end of the symlink path)
rather than when we hit the end of the path passed by the user.
The solution is to have link_path_walk() clear LOOKUP_CONTINUE if and only
if that flag was unset when we entered the function.
Signed-off-by: Trond Myklebust <email address hidden> ----8<- ------- ---
-------