X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Finclude%2Fhal_proc.h;h=a189d568483d3b8fb814d4299492fb97b93d295c;hb=dd2491a82880ed9b01b5d66b1814d271921797a4;hp=f41c938c74bdc86e8731ad2dcb255c199276a19a;hpb=95a9132bcc024715a0a87cb323d58967ea5b1803;p=tpg%2Facess2.git diff --git a/Kernel/include/hal_proc.h b/Kernel/include/hal_proc.h index f41c938c..a189d568 100644 --- a/Kernel/include/hal_proc.h +++ b/Kernel/include/hal_proc.h @@ -23,6 +23,10 @@ extern void ArchThreads_Init(void); * \brief Start preemptive multithreading (if needed) */ extern void Proc_Start(void); +/** + * \brief Called just before a thread is freed + */ +extern void Proc_ClearThread(tThread *Thread); /** * \brief Get the ID of this CPU * \return Zero based CPU ID @@ -68,7 +72,7 @@ extern void Proc_Reschedule(void); /** * \brief Clear the user's memory space back to the minimum required to run */ -extern tPAddr MM_ClearUser(void); +extern void MM_ClearUser(void); /** * \brief Dump the address space to the debug channel * \param Start First address @@ -76,4 +80,11 @@ extern tPAddr MM_ClearUser(void); */ extern void MM_DumpTables(tVAddr Start, tVAddr End); +/** + * \brief Check if a buffer is valid (and all user if originally user) + * \param Addr Base address + * \param Size Size of the buffer in bytes + * \return Boolean valid (0: invalid, non-0: Valid) + */ +extern int MM_IsValidBuffer(tVAddr Addr, size_t Size); #endif