[Ovmsdev] std::string data corruption (issue #189)

Michael Balzer dexter at expeedo.de
Wed Jan 30 03:07:40 HKT 2019


https://github.com/espressif/esp-idf/issues/3006

Regards,
Michael


Am 28.01.19 um 20:46 schrieb Michael Balzer:
> To clarify: the bug is most likely not restricted to the case of building a message in a buffer. It can possibly cause corruptions in any RAM section, so can
> well be responsible for many/most of the unidentified crashes and stack/heap corruptions we're experiencing.
>
> Regards,
> Michael
>
>
> Am 28.01.19 um 20:43 schrieb Michael Balzer:
>> For those not following the github discussion: I'm pretty sure I've nailed the bug down.
>>
>> I have reproduced the bug in a simple test project and intend to raise an issue with Espressif on this.
>>
>> https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/issues/189#issuecomment-457965435
>>
>> If you'd like to test this on your module, configure the project to your wifi credentials, then use "make flash". As the test project is small, this normally
>> will not erase your OVMS config partition, but a backup is always recommended.
>>
>> Regards,
>> Michael
>>
>>
>> Am 24.01.19 um 21:19 schrieb Michael Balzer:
>>> Everyone please have a look at…
>>>
>>> https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/issues/189#issuecomment-457334248
>>>
>>> Please try to reproduce the bug on your modules.
>>>
>>> I'm open for explanations.
>>>
>>> I thought this might be some copy-on-write bug with std::string, but the gcc 5.x libstdc++ does no longer use that implementation (wouldn't be C++11
>>> compliant as well). I also tried moving all strings to temporary buffers, but modes 5 & 6 eliminated this explanation as well.
>>>
>>> My remaining theories:
>>>
>>>   * A task writing out of bounds (but only 0-bytes?)
>>>   * A hardware issue only affecting some modules
>>>
>>> A hardware issue only affecting some percentage of ESP32 could explain this as well as the strange heap corruptions that seem to affect some modules
>>> especially often.
>>>
>>> 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
>>> 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
>> 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
> 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/20190129/71eb5176/attachment-0001.html>


More information about the OvmsDev mailing list