Refactor stack growth #57
@@ -421,7 +421,8 @@ validate_user_pointer (const void *ptr, size_t size, bool check_write)
|
||||
void *last = ptr + size - 1;
|
||||
if (!is_user_vaddr (last))
|
||||
thread_exit ();
|
||||
for (; ptr <= last; ptr++)
|
||||
ptr = pg_round_down (ptr);
|
||||
while (ptr <= last)
|
||||
{
|
||||
int result;
|
||||
/* Check read access to pointer. */
|
||||
@@ -430,6 +431,7 @@ validate_user_pointer (const void *ptr, size_t size, bool check_write)
|
||||
/* Check write access to pointer (if required). */
|
||||
if (check_write && !put_user (ptr, result))
|
||||
thread_exit ();
|
||||
ptr += PGSIZE;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user