Beste Forum,
Ik heb een stuk C code in beheer (niet door mij geschreven) dat gebruikt een pthread_mutex_lock en pthread_mutex_unlock call. De unlock wordt in een andere thread dan de lock gedaan. Dit werkt toevallig maar is gedocumenteerd (in de manpage van pthread_mutex_lock) als "undefined behaviour". De mutex is default/non-robust geinitialiseert. Ik beschouw het als een bug maar dit veranderen kost enige tijd (Testen , qualificatie, etc ..)
Mijn vraag is hoe dit te benaderen, 2 keuzes:
A - "It ain't broken , don't fix it" Undefined behaviour blijft ongewijzigd, ook na evt OS updates.
B - De code kan beslist omvallen na een OS of library update, dus beslist fixen. Bijvoorbeeld de call returns nu een error.
Graag enig advies.
Jan Roeloffzen
Ik heb een stuk C code in beheer (niet door mij geschreven) dat gebruikt een pthread_mutex_lock en pthread_mutex_unlock call. De unlock wordt in een andere thread dan de lock gedaan. Dit werkt toevallig maar is gedocumenteerd (in de manpage van pthread_mutex_lock) als "undefined behaviour". De mutex is default/non-robust geinitialiseert. Ik beschouw het als een bug maar dit veranderen kost enige tijd (Testen , qualificatie, etc ..)
Mijn vraag is hoe dit te benaderen, 2 keuzes:
A - "It ain't broken , don't fix it" Undefined behaviour blijft ongewijzigd, ook na evt OS updates.
B - De code kan beslist omvallen na een OS of library update, dus beslist fixen. Bijvoorbeeld de call returns nu een error.
Graag enig advies.
Jan Roeloffzen
[ Voor 0% gewijzigd door j.roeloffzen op 23-03-2026 14:56 . Reden: unintended smiley ]