-
Notifications
You must be signed in to change notification settings - Fork 19
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
Cannot reliably mount emulated storage under Linux #6
Comments
I think I have finally found it. Comparing the dumped file to the description on Wikipedia, there are multiple problems:
|
Problem no. 4 found: Line 559 in c003d65
EDIT: I am likely wrong with this, as it seems that the block size is supposed to be 256 bytes for passthrough files: Lines 334 to 337 in c003d65
|
|
when is this fixed? i have the same issue |
I'm sorry but I currently don't have much time to work on this. Also, fixing this here would fix the problem only for new releases of uf2d (which is the first step though); it would then have to be fixed with a firmware update for the problematic device (if your device is not fully under your control like with Raspberry Pi). |
This reverts commit a3082d5. The reverted commit adds check for FAT images. However, the tools used for creating images for the Lego Mindstrom EV3 are not adding '.' and '..' entry in the 'Projects' directory. Without this fix, the kernel can not fill the inode structure for 'Projects' directory. See microsoft/pxt-ev3#980 And microsoft/uf2-linux#6 With the patch reverted, we can mount an image copied from the EV3 Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
This reverts commit a3082d5. The reverted commit adds check for FAT images. However, the tools used for creating images for the Lego Mindstrom EV3 are not adding '.' and '..' entry in the 'Projects' directory. Without this fix, the kernel can not fill the inode structure for 'Projects' directory. See microsoft/pxt-ev3#980 And microsoft/uf2-linux#6 With the patch reverted, we can mount an image copied from the EV3 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> (am from https://lore.kernel.org/r/20220204062232.3410036-1-gwendal@chromium.org) BUG=b:205899437 TEST=With the patch reverted, we can mount an image copied from the EV3 Change-Id: I731be37a6305e4d5378ac4d31817adcbd43e9c62 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3430762 Tested-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Daniil Lunev <dlunev@chromium.org> Commit-Queue: Gwendal Grignou <gwendal@chromium.org> (cherry picked from commit f67697eb16412d5a1b5a633b619e129425afcec0) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3498707
This reverts commit a3082d5. The reverted commit adds check for FAT images. However, the tools used for creating images for the Lego Mindstrom EV3 are not adding '.' and '..' entry in the 'Projects' directory. Without this fix, the kernel can not fill the inode structure for 'Projects' directory. See microsoft/pxt-ev3#980 And microsoft/uf2-linux#6 With the patch reverted, we can mount an image copied from the EV3 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> (am from https://lore.kernel.org/r/20220204062232.3410036-1-gwendal@chromium.org) BUG=b:205899437 TEST=With the patch reverted, we can mount an image copied from the EV3 Change-Id: I731be37a6305e4d5378ac4d31817adcbd43e9c62 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3430762 Tested-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Daniil Lunev <dlunev@chromium.org> Commit-Queue: Gwendal Grignou <gwendal@chromium.org> (cherry picked from commit f67697eb16412d5a1b5a633b619e129425afcec0) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3498707
This reverts commit a3082d5. The reverted commit adds check for FAT images. However, the tools used for creating images for the Lego Mindstrom EV3 are not adding '.' and '..' entry in the 'Projects' directory. Without this fix, the kernel can not fill the inode structure for 'Projects' directory. See microsoft/pxt-ev3#980 And microsoft/uf2-linux#6 With the patch reverted, we can mount an image copied from the EV3 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> (am from https://lore.kernel.org/r/20220204062232.3410036-1-gwendal@chromium.org) BUG=b:205899437 TEST=With the patch reverted, we can mount an image copied from the EV3 Change-Id: I731be37a6305e4d5378ac4d31817adcbd43e9c62 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3430762 Tested-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Daniil Lunev <dlunev@chromium.org> Commit-Queue: Gwendal Grignou <gwendal@chromium.org> (cherry picked from commit f67697eb16412d5a1b5a633b619e129425afcec0) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3498707
The tools used for creating images for the Lego Mindstrom EV3 are not adding '.' and '..' entry in the 'Projects' directory. Without this fix, the kernel can not fill the inode structure for 'Projects' directory. See microsoft/pxt-ev3#980 And microsoft/uf2-linux#6 When counting the number of subdirs, ignore . and .. subdirs and add two when setting the initial link count for directories. This way, the number of links is always correctly accounted for. With this fix applied, we can mount an image with such empty directories, access them, create subdirectories and remove them. This also prevents corrupting such filesystems as when the inodes would be put, since no links were accounted for, all of its clusters would be marked as free. Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@igalia.com> Cc: Gwendal Grignou <gwendal@chromium.org> Link: https://lore.kernel.org/all/20220204062232.3410036-1-gwendal@chromium.org/ Cc: dlunev@chromium.org
See microsoft/pxt-ev3#980
The dynamically-generated
F_UF2
entries somehow cause mounting problems.The text was updated successfully, but these errors were encountered: