Closed Noctis-AKM closed 4 years ago
In my opinion, "previous" is the last on-disk cluster number of a file. "previous + 1" passed to allocate_cluster() as a hint and get a new allocated cluster --- "next". If "next" and the hint are equal, means that the file is contiguous, other wise, the file is fragmented. I have tested growing a file in an empty exfat with exfat-fuse, found the file have fat entries set because of the incorrect condition.
I see, thanks. I'm on vacation now, will be able to review and test in 2 weeks. Sorry for the delay.
Thanks! I'm on vacation now, will be able to review and test in 2 weeks. Sorry for this pause.
Would it be possible to make a new tagged version, so that this fix would get included in Ubuntu and other distributions?
Currently they are still shipping version 1.3.0. This bug has a large impact on the performance of seeks on embedded systems using e.g. SdFat library.
@relan please see above. It's been six weeks since the request for a point release was made.
Apparently Linux kernel also has a exfat driver nowadays, so the fuse-exfat package on Ubuntu is no longer needed even. Unfortunately many tutorials say to install it, and it appears to take priority over the kernel driver.
(Edit: Thanks for the 1.4.0 tag release)
What makes you think that the condition was incorrect?