NTFS in GENERIC: opt-in or opt-out?

Stefan Ehmann shoesoft at gmx.net
Mon Jan 19 10:09:25 PST 2009

On Monday 19 January 2009 17:33:57 Robert Watson wrote:
> On Mon, 19 Jan 2009, Luigi Rizzo wrote:
> > On Sun, Jan 18, 2009 at 11:25:14PM -0800, Maxim Sobolev wrote:
> >> I am reviewing differences between amd64 and i386 GENERIC kernels and
> >> noticed that for some unclear reason we ship amd64 GENERIC with NTFS
> >> module compiled in, while i386 without it. IMHO both should match. The
> >> question is whether NTFS should be i386 way (opt in) or amd64 way (opt
> >> out) in GENERIC? What do people think?
> >
> > given that the sysutils/fusefs-ntfs seems to be much better, I'd rather
> > remove the in-kernel ntfs from both and replace with a note on what to do
> > to use fusefs-ntfs
> There was a long thread on this topic on arch@, maybe 6 months ago, in
> which it was concluded that:
> (1) fusefs is fairly (quite) unstable if used intensively
> (2) our kernel ntfs code is much faster for read-only operation
> I doubt either of these has changed significantly in that time, but I'm
> willing to be surprised.  I watched my office-mate here at the CL suffer
> through the fuse/ntfs support on FreeBSD 7.x for several weeks before
> giving up and using UFS on his larger USB-attached storage.  He saw a range
> of panics in that time, all in fuse.

In that thread it is claimed that "Kernel NTFS support is about 10x faster 
than ntfs-3g on FreeBSD".

That's contrary to my experience:
I tried reading a ~1GB directory containing large files from a USB disk.
ntfs-3g: ~6.1MB/s
kernel ntfs: ~3.7MB/s

ntfs-3g is rather slow and kernel ntfs is even worse. For smaller files ntfs-3g 
also is faster for me.

ntfs-3g seems to do lots of unnecessary read operations. gstat(8) shows read 
speed of ~13-14MB/s. So half of the data seems to be thrown away.

More information about the freebsd-current mailing list