Refactor: Move destroying mmap data into process_exit instead of thread

This commit is contained in:
sBubshait
2024-12-04 21:59:38 +00:00
parent ecbb4e74a5
commit 806d6bc19e
2 changed files with 4 additions and 4 deletions

View File

@@ -401,10 +401,6 @@ thread_exit (void)
process_exit ();
#endif
#ifdef VM
mmap_destroy ();
#endif
/* Remove thread from all threads list, set our status to dying,
and schedule another process. That process will destroy us
when it calls thread_schedule_tail(). */

View File

@@ -25,6 +25,7 @@
#include "threads/synch.h"
#include "devices/timer.h"
#include "vm/page.h"
#include "vm/mmap.h"
#ifdef VM
#include "vm/frame.h"
#endif
@@ -363,6 +364,9 @@ process_exit (void)
struct thread *cur = thread_current ();
uint32_t *pd;
/* Unmap all memory mapped files */
mmap_destroy ();
/* Clean up all open files */
hash_destroy (&cur->open_files, fd_cleanup);
hash_destroy (&cur->pages, page_cleanup);