Mailing List Archive

Fat64 / exFat fs and Linux
Hi,

since Microsoft has now released their fat64 / exfat fs also for their 'stable' product line [1] and it seems to be the future choice for large capacity removable flash media, it seems likely that Linux users will start seeing this fs on USB sticks, portable drives and SDXC flash cards in the near future. The status at this time seems to be that there is no driver available and the specifications are not published either. Is someone working on a driver at the moment or are there any plans? Somehow it does not seem entirely unlikely that the past nightmare of linux-unreadable NTFS disks and media prior to the present NTFS driver will repeat itself with exFAT.

Max

[1] http://support.microsoft.com/?kbid=955704




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
A B <spinflipper4@yahoo.co.uk> writes:

> since Microsoft has now released their fat64 / exfat fs also for their 'stable' product line [1] and it seems to be the future choice for large capacity removable flash media, it seems likely that Linux users will start seeing this fs on USB sticks, portable drives and SDXC flash cards in the near future. The status at this time seems to be that there is no driver available and the specifications are not published either. Is someone working on a driver at the moment or are there any plans? Somehow it does not seem entirely unlikely that the past nightmare of linux-unreadable NTFS disks and media prior to the present NTFS driver will repeat itself with exFAT.

I wrote the driver for read-only exFAT driver at a few months ago.
However, I'm not working for it actively, because I can't make time for
it now.

If someone want to see it, email me.
--
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
> OGAWA Hirofumi writes:
>> A B <spinflipper4@yahoo.co.uk> writes:
>> since Microsoft has now released their fat64 / exfat fs also for their
>> 'stable' product line [1] and it seems to be the future choice for large
>> capacity removable flash media, (...)
>
> I wrote the driver for read-only exFAT driver at a few months ago.
> However, I'm not working for it actively, because I can't make time for
> it now.

Great! That sounds very promising.
Maybe you can post it to the list or on a webpage?

Cheers,
Max



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
A B <spinflipper4@yahoo.co.uk> writes:

>> OGAWA Hirofumi writes:
>>> A B <spinflipper4@yahoo.co.uk> writes:
>>> since Microsoft has now released their fat64 / exfat fs also for their
>>> 'stable' product line [1] and it seems to be the future choice for large
>>> capacity removable flash media, (...)
>>
>> I wrote the driver for read-only exFAT driver at a few months ago.
>> However, I'm not working for it actively, because I can't make time for
>> it now.
>
> Great! That sounds very promising.
> Maybe you can post it to the list or on a webpage?

Ok, I've put the patchset to,

http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz

exfat/series is patch order to apply, and exfat/patches/* is patches.

It would be temporary place, well, anyway, this is my lastest version.

Thanks.
--
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
OGAWA Hirofumi wrote:
>
> Ok, I've put the patchset to,
>
> http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz
>
> exfat/series is patch order to apply, and exfat/patches/* is patches.
>
> It would be temporary place, well, anyway, this is my lastest version.
>

Are there any non-sign-your-life-away specs to exFAT?

-hpa

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
"H. Peter Anvin" <hpa@zytor.com> writes:

> OGAWA Hirofumi wrote:
>>
>> Ok, I've put the patchset to,
>>
>> http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz
>>
>> exfat/series is patch order to apply, and exfat/patches/* is patches.
>>
>> It would be temporary place, well, anyway, this is my lastest version.
>>
>
> Are there any non-sign-your-life-away specs to exFAT?

I don't know whether there is any specs. I've hacked it from the disk
image created by Vista.

Thanks.
--
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
OGAWA Hirofumi wrote:
>
> Ok, I've put the patchset to,
>
> http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz
>
> exfat/series is patch order to apply, and exfat/patches/* is patches.
>
> It would be temporary place, well, anyway, this is my lastest version.
>

Thanks for the code, I patched it into 2.6.28.2 and tried it on a 128MB USB
volume filled with many files. The driver correctly read 73% of the files.
Impressive. Looking at the others, they seemed to have what I would call
'alignment problems'.

md5sum: WARNING: 1008 of 3842 computed checksums did NOT match

Cheers,
Max




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
A B <spinflipper4@yahoo.co.uk> writes:

>> Ok, I've put the patchset to,
>>
>> http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz
>>
>> exfat/series is patch order to apply, and exfat/patches/* is patches.
>>
>> It would be temporary place, well, anyway, this is my lastest version.
>>
>
> Thanks for the code, I patched it into 2.6.28.2 and tried it on a 128MB USB
> volume filled with many files. The driver correctly read 73% of the files.
> Impressive. Looking at the others, they seemed to have what I would call
> 'alignment problems'.
>
> md5sum: WARNING: 1008 of 3842 computed checksums did NOT match

Thanks for testing. I see. What is the 'alignment problems'? Well,
anyway, can I get the disk image of USB, or are there any way to
reproduce it in my machine?

Or can you dump with hacked userland command (this can be buggy)?

http://userweb.kernel.org/~hirofumi/exfat/exfat-userland.tar.gz

$ tar xzf exfat-userland.tar.gz
$ cd exfat-userland
$ make
$ ./exfat /path/to/exfat_device > exfat.dump

And please send exfat.dump.

Well, if you can debug it with this userland command, it would be
helpful. :)

Thanks.
--
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> writes:

> A B <spinflipper4@yahoo.co.uk> writes:
>
>>> Ok, I've put the patchset to,
>>>
>>> http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz
>>>
>>> exfat/series is patch order to apply, and exfat/patches/* is patches.
>>>
>>> It would be temporary place, well, anyway, this is my lastest version.
>>>
>>
>> Thanks for the code, I patched it into 2.6.28.2 and tried it on a 128MB USB
>> volume filled with many files. The driver correctly read 73% of the files.
>> Impressive. Looking at the others, they seemed to have what I would call
>> 'alignment problems'.
>>
>> md5sum: WARNING: 1008 of 3842 computed checksums did NOT match

I've updated the tarballs to fix the bug he found. If someone tried old
tarballs, please download new tarballs and try.

http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz

Thanks.
--
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
> I've updated the tarballs to fix the bug he found. If someone tried old
> tarballs, please download new tarballs and try.
>
> http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz
>
> Thanks.
> --
> OGAWA Hirofumi

I have tried the updates and it fixes all the problems I found initially.
I tried it on a larger volume as well with files >4GB ('messed up' by copying
many large files to it on XP at the same time) and it works well. (File
integrity checked using md5sum).

I would like to see this exfat read-only driver included in a future linux kernel.

Thanks again for the replies and the prompt fixes!
Cheers,
Max




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
On Sun, 1 Feb 2009 12:46:00 +0000 (GMT), I waved a wand and this
message magically appears in front of A B:

> > I've updated the tarballs to fix the bug he found. If someone tried
> > old tarballs, please download new tarballs and try.
> >
> > http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz

I have just converted your set of patches into a standalone module
driver that you can build outside the kernel as long as you have a
recent version of the kernel sources installed (currently 2.6.27).

The only modification I needed to make was to add an extern for sys_tz
in utils.c (extern struct timezone sys_tz)

The bz2 tarball can be found at:
http://www.munted.org.uk/programming/exfat.tar.bz2

Regards,
Alex
--
http://www.munted.org.uk

Fearsome grindings.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
RE: Fat64 / exFat fs and Linux [ In reply to ]
On Tue, 2009-12-01 at 13:58 -0800, Yuhong Bao wrote:
> > The bz2 tarball can be found at:
> > http://www.munted.org.uk/programming/exfat.tar.bz2

> Both of these links are now dead. It was alive, I remember downloading
> it.

My most abject apologies, I hadn't noticed the files had disappeared
from my website. I've just re-uploaded the files. Thanks for letting me
know!

Regards,
Alex
--
http://www.munted.org.uk

One very high maintenance cat living here.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
On Sun, 8 Feb 2009 09:43:33 +0000 (GMT), Alex Buell wrote
> On Sun, 1 Feb 2009 12:46:00 +0000 (GMT), I waved a wand and this
> message magically appears in front of A B:
> > > I've updated the tarballs to fix the bug he found. If someone tried
> > > old tarballs, please download new tarballs and try.
> > >
> > > http://userweb.kernel.org/~hirofumi/exfat/exfat.tar.gz
>
> I have just converted your set of patches into a standalone module
> driver that you can build outside the kernel as long as you have a
> recent version of the kernel sources installed (currently 2.6.27).
>
> The only modification I needed to make was to add an extern for sys_tz
> in utils.c (extern struct timezone sys_tz)
>
> The bz2 tarball can be found at:
> http://www.munted.org.uk/programming/exfat.tar.bz2

Is that one still alive? Maybe this should go into staging, now that exFAT got proposed as standard file system for SDXC [1] cards.

[1] http://www.sdcard.org/developers/tech/sdxc
______________________________________________________
GRATIS für alle WEB.DE-Nutzer: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://movieflat.web.de

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: Fat64 / exFat fs and Linux [ In reply to ]
Hi,

this patch makes the exFAT driver compatible with Linux 2.6.36.

-Tobias

diff -urN a/exfat/exfat.h b/exfat/exfat.h
--- a/exfat/exfat.h 2009-02-08 00:21:25.000000000 +0100
+++ b/exfat/exfat.h 2010-11-23 16:16:28.000000000 +0100
@@ -8,6 +8,7 @@

#include <linux/fs.h>
#include <linux/nls.h>
+#include <linux/slab.h>
#include "exfat_fs.h"

/* FIXME: remove this */
diff -urN a/exfat/super.c b/exfat/super.c
--- a/exfat/super.c 2009-02-08 00:20:52.000000000 +0100
+++ b/exfat/super.c 2010-12-08 13:41:51.000000000 +0100
@@ -58,8 +58,11 @@
kmem_cache_free(exfat_inode_cachep, EXFAT_I(inode));
}

-static void exfat_clear_inode(struct inode *inode)
+static void exfat_evict_inode(struct inode *inode)
{
+ truncate_inode_pages(&inode->i_data, 0);
+ invalidate_inode_buffers(inode);
+ end_writeback(inode);
exfat_cache_inval(inode);
exfat_detach(inode);
}
@@ -268,8 +271,7 @@
.alloc_inode = exfat_alloc_inode,
.destroy_inode = exfat_destroy_inode,
// .write_inode = ext4_write_inode,
-// .delete_inode = ext4_delete_inode,
- .clear_inode = exfat_clear_inode,
+ .evict_inode = exfat_evict_inode,
.put_super = exfat_put_super,
// .write_super = ext4_write_super,
.statfs = exfat_statfs,

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/