Thanks, I'll eventually need you or marino's help on dports side once sys/vfs/fuse part starts to work.
2016-09-16 1:01 GMT-04:00 Rimvydas Jasinskas <[email protected]>: > I'm in, let me know what parts you need in dports. > > > > On Fri, Sep 16, 2016 at 12:59 AM, Tomohiro Kusumi > <[email protected]> wrote: >> I'm thinking about porting fuse from FreeBSD. Several benefits by doing this. >> >> 1. There are some good fuse based fs like sshfs, ntfs-3g and maybe >> some others I'm not really aware of (like glusterfs if it ever worked >> on BSD ?). >> >> 2. puffs in DragonFly is broken according to other devs/users, and no >> one is really going to fix it (which is fine with me too). >> >> 3. We probably don't need (a broken) puffs if we get (a working) fuse, >> given the fact that most userspace filesystems are written for Linux >> fuse, but not for NetBSD puffs. NetBSD puffs seems to provide a some >> sort of emulation layer for compatibility with fuse, but ours >> apparently doesn't because it's broken. >> >> -- >> I haven't written any code yet, and won't be for another 2-3 weeks, >> but was looking at fuse (a kernel subsystem in FreeBSD and Linux >> kernel), libfuse (userspace portion of fuse) and some specific >> filesystem implementations such as sshfs. >> >> The target will be the next DragonFly release which is 4.8. Not sure >> if I can make it if we're to release 4.8 within 2016 (which is only 4 >> months from 4.6), but I should be able to make it otherwise with good >> enough stability for the initial release. >> >> The difficult part is that it's kinda difficult to tell how long it >> takes to port fuse, given the concept of the fuse itself. It's easy to >> imagine some sort of bugs will be exremely difficult to fix or even >> investigate. >> >> I know DragonFly users want ntfs(3g), but the initial release won't >> target ntfs. In theory, having fuse subsystem with good stability >> should mean it runs ntfs, but ntfs is probably way too complex to make >> it reliably work without bunch of try-and-errors within fuse itself. >> >> sshfs seems to be a good one for dogfooding the fuse on DragonFly once >> it starts to work, because sshfs isn't a toy fs (I think it's quite >> popular among Linux users) yet the code size isn't that huge, plus >> it's written by the same author as fuse in Linux kernel which >> guarantees good code quality. >> >> If porting a kernel subsystem goes as expected, I'll eventually need >> marino@ (or someone who is as good) to help with userspace. One of the >> issue with libfuse is that ./configure doesn't recognize DragonFly as >> a BSD, probably because our uname doesn't contain "BSD" (see around >> line 12000 of ./configure), and tries to compile with Linux specific >> code (e.g. mount(2) with 5 arguments instead of four). I may be able >> to fix these issues myself, but I doubt I do it in a right way. >> >> I'm also willing to fix any issues I may encounter on FreeBSD. >> >> If everything goes as expected, we can get rid of puffs in 4.8.
