emscripten-core / emscripten-core/emscripten

Crashes in dlmalloc that occur in a worker can lock up the entire application

Aperta
#14,907 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C++
Stelle
27.6k
Fork
3.6k
Merge medio
1g 14h
PR unite (30g)
125

Descrizione

We have had reports of an issue where a crash in dlmalloc (possible due to memory corruption) that happen on a worker can cause the entire application to freeze and the error doesn't get correctly reported. We think this is because the thread crashes while holding some global malloc lock which means the main thread is likely to end of blocked on malloc/free.

Ideally a crash like this would bring own all threads asynchronously but we can't do that with workers.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia tracciando come i fallimenti di dlmalloc nei worker thread vengono segnalati al thread principale, soprattutto quando il worker detiene un lock globale di malloc. Analizza il percorso di crash del worker e il comportamento di blocco di malloc/free nel thread principale; la modifica completata dovrebbe impedire il blocco dell’applicazione e garantire che il crash del worker venga segnalato correttamente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
cpp, wasm
Ambito
compilers, operating-systems
Tipo di issue
Bug
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.