TacOS-team / tacos

Système d'exploitation / Operating System
GNU General Public License v3.0
9 stars 4 forks source link

Fonction exit() fait planter régulièrement... #180

Closed MaximeCheramy closed 9 years ago

MaximeCheramy commented 10 years ago

Si à la fin d'un programme on fait un exit(1) par exemple, alors ça plante souvent. Mais pas toujours...

MaximeCheramy commented 10 years ago

J'ai mis un exit(0) à la fin du main de test_io et j'obtiens un plantage de mishell une fois le wait débloqué :

In /tacos/bin/mishell (pid:3)

Register dump: eax:0x00472f2c esp:0x00000000 ecx:0x00472f54 ebp:0x00000000 edx:0x00000000 esi:0x00000002 ebx:0x00000000 edi:0x0000000e eip:0x00000004

Stack Trace:  0x00106538 [syscall_entry]  0x00102c5e [interrupt_wrapper16]  0x400003a7 [main]  0x4000484e [startmain]

MaximeCheramy commented 10 years ago

Supprimer l'envoi du SIGCHLD fait disparaitre le bug.

MaximeCheramy commented 9 years ago

Suite à mes derniers bugfixes, je n'arrive plus à reproduire avec SIGCHLD réactivé. J'ai testé avec gcc, clang et sur qemu et bochs, sur 2 machines, je ferme.