From 68f1cc34a5878000a1ac8946a5722bd5f793b251 Mon Sep 17 00:00:00 2001 From: zemul Date: Mon, 24 Apr 2023 13:34:38 +0800 Subject: [PATCH] [mount]Fix copy file range (#4407) * fix:mount deadlock * fix --------- Co-authored-by: zemul --- weed/mount/weedfs_file_copy_range.go | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/weed/mount/weedfs_file_copy_range.go b/weed/mount/weedfs_file_copy_range.go index e3f841b02..49bab17f3 100644 --- a/weed/mount/weedfs_file_copy_range.go +++ b/weed/mount/weedfs_file_copy_range.go @@ -46,18 +46,14 @@ func (wfs *WFS) CopyFileRange(cancel <-chan struct{}, in *fuse.CopyFileRangeIn) // lock source and target file handles fhOut.Lock() defer fhOut.Unlock() - fhOut.entryLock.Lock() - defer fhOut.entryLock.Unlock() if fhOut.entry == nil { return 0, fuse.ENOENT } if fhIn.fh != fhOut.fh { - fhIn.Lock() - defer fhIn.Unlock() - fhIn.entryLock.Lock() - defer fhIn.entryLock.Unlock() + fhIn.RLock() + defer fhIn.RUnlock() } // directories are not supported