[Ovmsdev] Attention: esp-idf upgrade still breaks configuration
Michael Balzer
dexter at expeedo.de
Sat Nov 24 00:20:03 HKT 2018
It's not a timing issue, I've let it reboot about 30 times without any successful mount after the first failure.
Going into bisecting now…
Am 23.11.18 um 15:54 schrieb Mark Webb-Johnson:
>> It may actually not be a corruption of the filesystem but some timing issue on the mount procedure. To test that we could disable the auto formatting on
>> mount failures.
>
> True.
>
> A couple of Espressif guys have jumped on the issue, and I have provided some more information for them. I think key will be reproducing it.
>
>> The issue may also be dependant on the hardware version, i.e. it could be caused by the bug that caused the SD speed issue on the first 3.1 batch.
>
> That was definitely a hardware issue with the CP2102 chip. I don’t think related to ESP in any way.
>
> Regards, Mark.
>
>> On 23 Nov 2018, at 10:34 PM, Michael Balzer <dexter at expeedo.de <mailto:dexter at expeedo.de>> wrote:
>>
>> It may actually not be a corruption of the filesystem but some timing issue on the mount procedure. To test that we could disable the auto formatting on
>> mount failures.
>>
>> The issue may also be dependant on the hardware version, i.e. it could be caused by the bug that caused the SD speed issue on the first 3.1 batch.
>>
>> I only have tried the idf update on my batch 1 module (my bench / development module). I think most of our edge testers also have that version.
>>
>> Regards,
>> Michael
>>
>>
>> Am 23.11.18 um 02:32 schrieb Mark Webb-Johnson:
>>> I have raised the following github issue to Espressif:
>>>
>>> https://github.com/espressif/esp-idf/issues/2730
>>>
>>>
>>> Environment
>>>
>>> * Development Kit: none
>>> * Kit version (for WroverKit/PicoKit/DevKitC): none
>>> * Module or chip used: ESP32-WROVER 16MB
>>> * IDF version (run |git describe --tags| to find it): v3.2-beta1-208-g0d7f2d77c
>>> * Build System: make
>>> * Compiler version (run |xtensa-esp32-elf-gcc --version| to find it): (crosstool-NG crosstool-ng-1.22.0-80-g6c4433a) 5.2.0
>>> * Operating System: macOS
>>> * Power Supply: USB
>>>
>>>
>>> Problem Description
>>>
>>> TLDR: Between May and July 2018 a change was made to esp idf master that is causing corruption on FAT filesystems mounted on SPI flash.
>>>
>>> Our project uses a partitions.csv as follows:
>>>
>>> |# Name, Type, SubType, Offset, Size nvs, data, nvs, 0x9000, 0x4000 otadata, data, ota, 0xd000, 0x2000 phy_init, data, phy, 0xf000, 0x1000 factory, app,
>>> factory, 0x10000, 4M ota_0, app, ota_0, , 4M ota_1, app, ota_1, , 4M store, data, fat, , 1M |
>>>
>>> The 'store' partition is formatted as FAT, as follows:
>>>
>>> esp_vfs_fat_mount_config_t m_store_fat;
>>> wl_handle_t m_store_wlh;
>>> memset(&m_store_fat,0,sizeof(esp_vfs_fat_sdmmc_mount_config_t));
>>> m_store_fat.format_if_mount_failed = true;
>>> m_store_fat.max_files = 5;
>>> esp_vfs_fat_spiflash_mount("/store", "store", &m_store_fat, &m_store_wlh);
>>>
>>> We have previously used a clone of esp idf master, dated around May 22 2018, without issues. The partition is very reliable.
>>>
>>> However, on Jul 6 2018, we updated our clone to use the latest esp idf master at that time. Shortly afterwards, users started to report that their
>>> 'store' filesystem contents were corrupted. We rolled back.
>>>
>>> We have now tried again (updating on Oct 20 2018 to v3.2-beta1-208-g0d7f2d77c) and immediately had the same issue. Random corruption of FAT filesystem
>>> in SPI flash.
>>>
>>>
>>> Expected Behavior
>>>
>>> No corruption of FAT filesystem.
>>>
>>>
>>> Actual Behavior
>>>
>>> Corruption of FAT filesystem.
>>>
>>>
>>> Steps to reproduce
>>>
>>> 1. Create a partition in SPI flash, and mount FAT filesystem
>>> 2. Read and write to files on FAT filesystem
>>> 3. Reboot
>>> 4. Observe random corruption and unmountable filesystem
>>>
>>>
>>> Code to reproduce this issue
>>>
>>> esp_vfs_fat_mount_config_t m_store_fat;
>>> wl_handle_t m_store_wlh;
>>> memset(&m_store_fat,0,sizeof(esp_vfs_fat_sdmmc_mount_config_t));
>>> m_store_fat.format_if_mount_failed = true;
>>> m_store_fat.max_files = 5;
>>> esp_vfs_fat_spiflash_mount("/store", "store", &m_store_fat, &m_store_wlh);
>>>
>>>
>>> Debug Logs
>>>
>>> n/a
>>>
>>>
>>> Other items if possible
>>>
>>> Please advise if you need anything further.
>>>
>>>
>>> I think the timeline is correct (the issue is in esp idf master some time between May and July 2018), but please let me know if you know differently (or
>>> update the github issue with your comments).
>>>
>>> Regards, Mark
>>>
>>>> On 23 Nov 2018, at 6:19 AM, Michael Balzer <dexter at expeedo.de <mailto:dexter at expeedo.de>> wrote:
>>>>
>>>> esp-idf and OVMS branches are back to the working version.
>>>>
>>>> In case you also lost your config: I also just fixed a bug on restoring into an empty /store partition.
>>>>
>>>> Regards,
>>>> Michael
>>>>
>>>>
>>>> Am 22.11.18 um 22:34 schrieb Michael Balzer:
>>>>> See https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/pull/165
>>>>>
>>>>> I'll reset both master branches now.
>>>>>
>>>>> If you're about to pull, please wait until I've reverted the branches.
>>>>>
>>>>> Regards,
>>>>> Michael
>>>>>
>>>>
>>>> --
>>>> Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
>>>> Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
>>>>
>>>> _______________________________________________
>>>> OvmsDev mailing list
>>>> OvmsDev at lists.openvehicles.com <mailto:OvmsDev at lists.openvehicles.com>
>>>> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
>>>
>>>
>>> _______________________________________________
>>> OvmsDev mailing list
>>> OvmsDev at lists.openvehicles.com
>>> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
>>
>> --
>> Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
>> Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
>> _______________________________________________
>> OvmsDev mailing list
>> OvmsDev at lists.openvehicles.com <mailto:OvmsDev at lists.openvehicles.com>
>> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
>
>
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.openvehicles.com
> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20181123/32f5d553/attachment.htm>
More information about the OvmsDev
mailing list