Mark,

Thanks for your patches. Before I found this post, I had started to work around 
the apparent lack of support of "noatime" in Solaris's FUSE. I did this by 
#ifdef'ing out the various places in ntfs-3g.c which relate to this flag. I 
also worked around the build errors in a similar way as you, by including the 
headers and hacking the configure script. But when I performed the mount, the 
system hard-locked. Even without noatime, something is going very wrong.

I then checked out the latest hg version of fusefs and libfuse, applied your 
patches, and applied to your patches to ntfs-3g against version 1.1104, and got 
further than I could get on my own. Everything builds, but upon mounting:

# ntfs-3g /dev/dsk/c1t0d0p2 /windows/c
fuse: mount failed: Invalid argument

Since your post says "make ntfs-3g work", I assume you actually got it working. 
But upon checking the readme, I see that I need Nevada Build 77 for it to work. 
I only have Build 76. Have there been other changes made somewhere in Build 77 
that are essential for this? If so -- how do I get Build 77? Currently, the 
OpenSolaris Community Edition only offers Build 76. I'm from Linux, so this may 
sound stupid, but -- is there an online repository out there with the latest 
Build 77 software that I can download, and e.g. update my kernel and any 
related libs?

# uname -a
SunOS vk4rms 5.11 snv_76 i86pc i386 i86pc

If you just threw Build 77 out there because that's what works with your 
system, that's fine too - but hopefully you did really get it to work, so that 
I can try and mimic what you did.

Your patches get the job done, but I've also cooked up a few more changes to 
ntfs-3g that might increase its chances of being accepted upstream: 

1. The configure script now passes in -D__SOLARIS__ to gcc if $target_os 
contains "solaris" (it's usually reported as "solaris<major>.<minor>" so an 
exact match won't do.)
2. All of our Solaris-specific changes to ntfs-3g have been encapsulated in 
#ifdef __SOLARIS__ to ensure there is zero impact on other platforms.
3. I've #ifndef'ed out the noatime code, because I suspected that as the 
culprit. Maybe I should leave it in, if your changes to fusefs/libfuse have 
actually made it work?

I'm attaching diff -ur patches to ntfs-3g 1.1104's "configure" and 
"src/ntfs-3g.c" files with my changes merged into yours. Hopefully these can be 
committed to upstream; and hopefully you can help me get ntfs-3g working on my 
system! :)

Note: I'm not sure if it has let me attach the files, so I also uploaded them 
to my website:

http://tiyukquellmalz.org/ntfs-3g.c.patch
http://tiyukquellmalz.org/configure-ntfs-3g.patch

Thanks,

Sean
--
This messages posted from opensolaris.org

Reply via email to