1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2024-12-26 17:57:59 +00:00

Merge pull request #5106 from ThomasWaldmann/fuse-opts

FUSE micro opt, removal of unneeded code
This commit is contained in:
TW 2020-04-12 18:44:59 +02:00 committed by GitHub
commit b6a31be8c3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -8,7 +8,6 @@
import time
from collections import defaultdict
from signal import SIGINT
from distutils.version import LooseVersion
import llfuse
@ -25,17 +24,10 @@
from .lrucache import LRUCache
from .remote import RemoteRepository
# Does this version of llfuse support ns precision?
have_fuse_xtime_ns = hasattr(llfuse.EntryAttributes, 'st_mtime_ns')
fuse_version = LooseVersion(getattr(llfuse, '__version__', '0.1'))
if fuse_version >= '0.42':
def fuse_main():
return llfuse.main(workers=1)
else:
def fuse_main():
llfuse.main(single=True)
return None
def fuse_main():
return llfuse.main(workers=1)
# size of some LRUCaches (1 element per simultaneously open file)
# note: _inode_cache might have rather large elements - Item.chunks can be large!
@ -362,8 +354,7 @@ def file_version(item, path):
file_id = blake2b_128(path)
current_version, previous_id = self.versions_index.get(file_id, (0, None))
chunk_ids = [chunk_id for chunk_id, _, _ in item.chunks]
contents_id = blake2b_128(b''.join(chunk_ids))
contents_id = blake2b_128(b''.join(chunk_id for chunk_id, _, _ in item.chunks))
if contents_id != previous_id:
current_version += 1
@ -567,17 +558,10 @@ def getattr(self, inode, ctx=None):
entry.st_blksize = 512
entry.st_blocks = (entry.st_size + entry.st_blksize - 1) // entry.st_blksize
# note: older archives only have mtime (not atime nor ctime)
mtime_ns = item.mtime
if have_fuse_xtime_ns:
entry.st_mtime_ns = mtime_ns
entry.st_atime_ns = item.get('atime', mtime_ns)
entry.st_ctime_ns = item.get('ctime', mtime_ns)
entry.st_birthtime_ns = item.get('birthtime', mtime_ns)
else:
entry.st_mtime = mtime_ns / 1e9
entry.st_atime = item.get('atime', mtime_ns) / 1e9
entry.st_ctime = item.get('ctime', mtime_ns) / 1e9
entry.st_birthtime = item.get('birthtime', mtime_ns) / 1e9
entry.st_mtime_ns = mtime_ns = item.mtime
entry.st_atime_ns = item.get('atime', mtime_ns)
entry.st_ctime_ns = item.get('ctime', mtime_ns)
entry.st_birthtime_ns = item.get('birthtime', mtime_ns)
return entry
def listxattr(self, inode, ctx=None):