Merge branch 'jh7110_debug' into prepare_for_master
This commit is contained in:
@@ -107,4 +107,4 @@ void KBuddyDestory(struct KBuddy* pbuddy);
|
||||
/*
|
||||
* Print current free pages for debug.
|
||||
*/
|
||||
void KFreePagesInfo(struct KBuddy* pbuddy);
|
||||
void KFreePagesInfo(struct KBuddy* pbuddy);
|
||||
|
||||
@@ -35,7 +35,7 @@ Modification:
|
||||
#define OUTPUT_LEVLE_DEBUG 1
|
||||
#define OUTPUT_LEVLE_ERROR 2
|
||||
|
||||
#define OUTPUT_LEVEL_TEST 3
|
||||
#define OUTPUT_LEVLE_TEST 3
|
||||
|
||||
#define OUTPUT_LEVLE OUTPUT_LEVLE_DEBUG
|
||||
// #define OUTPUT_LEVLE OUTPUT_LEVLE_LOG
|
||||
|
||||
@@ -56,6 +56,7 @@ struct MemSpace {
|
||||
|
||||
/* task memory resources */
|
||||
struct TopLevelPageDirectory pgdir; // [phy] vm pgtbl base address
|
||||
struct TopLevelPageDirectory pgdir_riscv; // [phy] vm pgtbl base address
|
||||
uintptr_t heap_base; // mem size of proc used(allocated by kernel)
|
||||
uintptr_t mem_size;
|
||||
/* task communication mem resources */
|
||||
|
||||
@@ -37,7 +37,11 @@ struct CPU {
|
||||
int cpuid;
|
||||
|
||||
struct Thread* task;
|
||||
#ifndef __riscv
|
||||
struct context* scheduler;
|
||||
#else
|
||||
struct context scheduler;
|
||||
#endif
|
||||
};
|
||||
|
||||
extern struct CPU global_cpus[NR_CPU];
|
||||
|
||||
@@ -48,6 +48,19 @@ Modification:
|
||||
#define LEVEL3_PDE_ADDR(v) ALIGNDOWN(v, LEVEL3_PDE_SIZE)
|
||||
|
||||
#define TOPLEVLE_PAGEDIR_SIZE sizeof(uintptr_t) * NUM_TOPLEVEL_PDE
|
||||
|
||||
|
||||
//#define PAGE_SHIFT (12)
|
||||
#define _PAGE_PFN_SHIFT 10
|
||||
#define PFN_DOWN(x) ((x) >> PAGE_SHIFT)
|
||||
#define PFN_PGD(x) ((x) << _PAGE_PFN_SHIFT)
|
||||
#define PFN_PHYS(x) ((x) << PAGE_SHIFT)
|
||||
#define _PGD_PFN(x) ((x) >> _PAGE_PFN_SHIFT)
|
||||
#define PFN_PMD PFN_PGD
|
||||
#define _PMD_PFN _PGD_PFN
|
||||
#define PFN_PTE PFN_PGD
|
||||
#define _PTE_PFN _PGD_PFN
|
||||
|
||||
// clang-format on
|
||||
|
||||
struct PagerRightGroup {
|
||||
@@ -74,4 +87,5 @@ void load_kern_pgdir(struct TraceTag* mmu_driver_tag, struct TraceTag* intr_driv
|
||||
void secondary_cpu_load_kern_pgdir(struct TraceTag* mmu_driver_tag, struct TraceTag* intr_driver_tag);
|
||||
|
||||
extern struct XiziPageManager xizi_pager;
|
||||
bool module_pager_init(struct PagerRightGroup*);
|
||||
bool module_pager_init(struct PagerRightGroup*);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user