Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix file contiguous judgement. #101

Merged
merged 1 commit into from
May 4, 2020
Merged

Fix file contiguous judgement. #101

merged 1 commit into from
May 4, 2020

Conversation

Noctis-AKM
Copy link
Contributor

No description provided.

Signed-off-by: noctis <noctis.AKM@gmail.com>
@relan
Copy link
Owner

relan commented Sep 5, 2018

What makes you think that the condition was incorrect?

@Noctis-AKM
Copy link
Contributor Author

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.

@relan
Copy link
Owner

relan commented Sep 30, 2018

I see, thanks. I'm on vacation now, will be able to review and test in 2 weeks. Sorry for the delay.

@relan
Copy link
Owner

relan commented Sep 30, 2018

Thanks! I'm on vacation now, will be able to review and test in 2 weeks. Sorry for this pause.

@relan relan changed the base branch from master to contig May 4, 2020 15:49
@relan relan merged commit 00cd408 into relan:contig May 4, 2020
@PetteriAimonen
Copy link

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.

@aperezbios
Copy link

@relan please see above. It's been six weeks since the request for a point release was made.

@PetteriAimonen
Copy link

PetteriAimonen commented Mar 2, 2022

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)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants