aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2022-08-04 01:35:18 -0700
committerchrislu <chris.lu@gmail.com>2022-08-04 01:35:18 -0700
commitbd13a7968f9cc7620f19511e896c6e0099ff7f86 (patch)
tree91f207be11316c9e8c137f20cd537a9a2a4d3a28
parent88945d99546dda6a5f92c910aa86ca91e050873a (diff)
downloadseaweedfs-bd13a7968f9cc7620f19511e896c6e0099ff7f86.tar.xz
seaweedfs-bd13a7968f9cc7620f19511e896c6e0099ff7f86.zip
remove unused symlink resolving
-rw-r--r--weed/mount/weedfs.go12
-rw-r--r--weed/mount/weedfs_attr.go6
-rw-r--r--weed/mount/weedfs_filehandle.go2
-rw-r--r--weed/mount/weedfs_xattr.go8
4 files changed, 9 insertions, 19 deletions
diff --git a/weed/mount/weedfs.go b/weed/mount/weedfs.go
index 06dfb9bbb..aaaa2877d 100644
--- a/weed/mount/weedfs.go
+++ b/weed/mount/weedfs.go
@@ -125,7 +125,7 @@ func (wfs *WFS) Init(server *fuse.Server) {
wfs.fuseServer = server
}
-func (wfs *WFS) maybeReadEntry(inode uint64, followSymLink bool) (path util.FullPath, fh *FileHandle, entry *filer_pb.Entry, targetInode uint64, status fuse.Status) {
+func (wfs *WFS) maybeReadEntry(inode uint64) (path util.FullPath, fh *FileHandle, entry *filer_pb.Entry, status fuse.Status) {
path, status = wfs.inodeToPath.GetPath(inode)
if status != fuse.OK {
return
@@ -139,16 +139,6 @@ func (wfs *WFS) maybeReadEntry(inode uint64, followSymLink bool) (path util.Full
} else {
entry, status = wfs.maybeLoadEntry(path)
}
- targetInode = inode
- if status == fuse.OK && followSymLink && entry.FileMode()&os.ModeSymlink != 0 {
- if entry != nil && entry.Attributes != nil && entry.Attributes.Inode != 0 {
- targetInode = entry.Attributes.Inode
- }
- target := util.FullPath(filepath.Join(string(path), "../"+entry.Attributes.SymlinkTarget))
- targetParent, _ := target.DirAndName()
- wfs.inodeToPath.EnsurePath(util.FullPath(targetParent), true)
- entry, status = wfs.maybeLoadEntry(target)
- }
return
}
diff --git a/weed/mount/weedfs_attr.go b/weed/mount/weedfs_attr.go
index 89aa25cb3..07f814ba1 100644
--- a/weed/mount/weedfs_attr.go
+++ b/weed/mount/weedfs_attr.go
@@ -17,7 +17,7 @@ func (wfs *WFS) GetAttr(cancel <-chan struct{}, input *fuse.GetAttrIn, out *fuse
}
inode := input.NodeId
- _, _, entry, inode, status := wfs.maybeReadEntry(inode, false)
+ _, _, entry, status := wfs.maybeReadEntry(inode)
if status == fuse.OK {
out.AttrValid = 1
wfs.setAttrByPbEntry(&out.Attr, inode, entry)
@@ -40,7 +40,7 @@ func (wfs *WFS) SetAttr(cancel <-chan struct{}, input *fuse.SetAttrIn, out *fuse
return fuse.Status(syscall.ENOSPC)
}
- path, fh, entry, inode, status := wfs.maybeReadEntry(input.NodeId, false)
+ path, fh, entry, status := wfs.maybeReadEntry(input.NodeId)
if status != fuse.OK {
return status
}
@@ -112,7 +112,7 @@ func (wfs *WFS) SetAttr(cancel <-chan struct{}, input *fuse.SetAttrIn, out *fuse
}
out.AttrValid = 1
- wfs.setAttrByPbEntry(&out.Attr, inode, entry)
+ wfs.setAttrByPbEntry(&out.Attr, input.NodeId, entry)
if fh != nil {
fh.dirtyMetadata = true
diff --git a/weed/mount/weedfs_filehandle.go b/weed/mount/weedfs_filehandle.go
index 9710b104f..4845654ed 100644
--- a/weed/mount/weedfs_filehandle.go
+++ b/weed/mount/weedfs_filehandle.go
@@ -7,7 +7,7 @@ import (
func (wfs *WFS) AcquireHandle(inode uint64, uid, gid uint32) (fileHandle *FileHandle, status fuse.Status) {
var entry *filer_pb.Entry
- _, _, entry, inode, status = wfs.maybeReadEntry(inode, true)
+ _, _, entry, status = wfs.maybeReadEntry(inode)
if status == fuse.OK {
// need to AcquireFileHandle again to ensure correct handle counter
fileHandle = wfs.fhmap.AcquireFileHandle(wfs, inode, entry)
diff --git a/weed/mount/weedfs_xattr.go b/weed/mount/weedfs_xattr.go
index e202b77b0..fbfd6fca7 100644
--- a/weed/mount/weedfs_xattr.go
+++ b/weed/mount/weedfs_xattr.go
@@ -36,7 +36,7 @@ func (wfs *WFS) GetXAttr(cancel <-chan struct{}, header *fuse.InHeader, attr str
return 0, fuse.EINVAL
}
- _, _, entry, _, status := wfs.maybeReadEntry(header.NodeId, false)
+ _, _, entry, status := wfs.maybeReadEntry(header.NodeId)
if status != fuse.OK {
return 0, status
}
@@ -102,7 +102,7 @@ func (wfs *WFS) SetXAttr(cancel <-chan struct{}, input *fuse.SetXAttrIn, attr st
}
}
- path, fh, entry, _, status := wfs.maybeReadEntry(input.NodeId, false)
+ path, fh, entry, status := wfs.maybeReadEntry(input.NodeId)
if status != fuse.OK {
return status
}
@@ -143,7 +143,7 @@ func (wfs *WFS) ListXAttr(cancel <-chan struct{}, header *fuse.InHeader, dest []
return 0, fuse.Status(syscall.ENOTSUP)
}
- _, _, entry, _, status := wfs.maybeReadEntry(header.NodeId, false)
+ _, _, entry, status := wfs.maybeReadEntry(header.NodeId)
if status != fuse.OK {
return 0, status
}
@@ -180,7 +180,7 @@ func (wfs *WFS) RemoveXAttr(cancel <-chan struct{}, header *fuse.InHeader, attr
if len(attr) == 0 {
return fuse.EINVAL
}
- path, fh, entry, _, status := wfs.maybeReadEntry(header.NodeId, false)
+ path, fh, entry, status := wfs.maybeReadEntry(header.NodeId)
if status != fuse.OK {
return status
}