-
Notifications
You must be signed in to change notification settings - Fork 51
Closed
Description
There are a number of issues with pyfuse3 on FreeBSD right now.
Buildtime issues:
- In
src/pyfuse.pyx, there'sdef syncfs(path)function that callslibc_extra.syncfs(), which is expected to be available inunistd.h. However, there's no such function available on FreeBSD, and, in general, it appears to be Linux-only. - In
src/pyfuse3.pyx, it's expected thatlinux/fs.hcontainsRENAME_EXCHANGEandRENAME_NOREPLACEwhich's not the case on FreeBSD (there's no such header at all).
Runtime issues:
$ sudo python3 examples/tmpfs.py ~/fuse
Traceback (most recent call last):
File "examples/tmpfs.py", line 451, in <module>
trio.run(pyfuse3.main)
File "/usr/local/lib/python3.6/site-packages/trio-0.11.0-py3.6.egg/trio/_core/_run.py", line 1444, in run
raise runner.main_task_outcome.error
File "/usr/home/novel/code/pyfuse3/src/_pyfuse3.py", line 30, in wrapper
await fn(*args, **kwargs)
File "src/pyfuse3.pyx", line 732, in main
async with trio.open_nursery() as nursery:
File "/usr/local/lib/python3.6/site-packages/trio-0.11.0-py3.6.egg/trio/_core/_run.py", line 506, in __aexit__
raise combined_error_from_nursery
File "/usr/home/novel/code/pyfuse3/src/_pyfuse3.py", line 30, in wrapper
await fn(*args, **kwargs)
File "src/internal.pxi", line 229, in _session_loop
await _wait_fuse_readable()
File "src/internal.pxi", line 205, in _wait_fuse_readable
async with worker_data.read_lock:
File "src/internal.pxi", line 207, in pyfuse3._wait_fuse_readable
await trio.hazmat.wait_readable(session_fd)
File "/usr/local/lib/python3.6/site-packages/trio-0.11.0-py3.6.egg/trio/_core/_io_kqueue.py", line 131, in wait_readable
await self._wait_common(fd, select.KQ_FILTER_READ)
File "/usr/local/lib/python3.6/site-packages/trio-0.11.0-py3.6.egg/trio/_core/_io_kqueue.py", line 120, in _wait_common
self._kqueue.control([event], 0)
OSError: [Errno 19] Operation not supported by device
$
I'm yet to debug this traceback further.
Metadata
Metadata
Assignees
Labels
No labels