Lines Matching refs:page_list
99 let page_list: PageList<A> = PageList::new(0, PhysAddr::new(0)); in new() localVariable
100 Self::write_page(*f, page_list); in new()
113 let page_list: PageList<A> = in new() localVariable
115 Self::write_page(curr_page, page_list); in new()
139 let mut page_list: PageList<A> = Self::read_page(page_list_paddr); in new() localVariable
142 Self::entry_virt_addr(page_list_paddr, page_list.entry_num), in new()
145 page_list.entry_num += 1; in new()
146 Self::write_page(page_list_paddr, page_list); in new()
164 let mut page_list: PageList<A> = Self::read_page(page_list_paddr); in new() localVariable
167 Self::entry_virt_addr(page_list_paddr, page_list.entry_num), in new()
170 page_list.entry_num += 1; in new()
174 page_list_paddr = page_list.next_page; in new()
175 Self::write_page(page_list_paddr, page_list); in new()
180 let mut page_list: PageList<A> = Self::read_page(page_list_paddr); in new() localVariable
184 Self::entry_virt_addr(page_list_paddr, page_list.entry_num), in new()
187 page_list.entry_num += 1; in new()
195 page_list_paddr = page_list.next_page; in new()
196 Self::write_page(page_list_paddr, page_list); in new()
213 let mut page_list: PageList<A> = Self::read_page(page_list_paddr); in new() localVariable
216 Self::entry_virt_addr(page_list_paddr, page_list.entry_num), in new()
219 page_list.entry_num += 1; in new()
220 Self::write_page(page_list_paddr, page_list); in new()
249 let page_list = unsafe { A::read(A::phys_2_virt(addr).unwrap()) }; in read_page() localVariable
250 return page_list; in read_page()
253 pub fn write_page(curr_page: PhysAddr, page_list: PageList<A>) { in write_page()
257 unsafe { A::write(virt_addr, page_list) }; in write_page()
283 let mut page_list: PageList<A> = Self::read_page(page_list_addr); in pop_front() localVariable
286 while page_list.entry_num == 0 { in pop_front()
287 let next_page_list_addr = page_list.next_page; in pop_front()
296 drop(page_list); in pop_front()
305 page_list = Self::read_page(next_page_list_addr); in pop_front()
310 if page_list.entry_num > 0 { in pop_front()
314 page_list.entry_num - 1, in pop_front()
320 Self::entry_virt_addr(page_list_addr, page_list.entry_num - 1), in pop_front()
329 page_list.entry_num - 1 in pop_front()
335 page_list.entry_num -= 1; in pop_front()
336 let tmp_current_entry_num = page_list.entry_num; in pop_front()
337 if page_list.entry_num == 0 { in pop_front()
338 if !page_list.next_page.is_null() { in pop_front()
340 self.free_area[Self::order2index(spec_order)] = page_list.next_page; in pop_front()
341 drop(page_list); in pop_front()
344 Self::write_page(page_list_addr, page_list); in pop_front()
349 Self::write_page(page_list_addr, page_list.clone()); in pop_front()
457 let mut page_list: PageList<A> = Self::read_page(page_list_paddr); in buddy_free() localVariable
458 let first_page_list = page_list.clone(); in buddy_free()
465 for i in 0..page_list.entry_num { in buddy_free()
475 if page_list.next_page.is_null() { in buddy_free()
478 page_list_paddr = page_list.next_page; in buddy_free()
479 page_list = Self::read_page(page_list_paddr); in buddy_free()
486 page_list.entry_num <= Self::BUDDY_ENTRIES, in buddy_free()
534 let (paddr, mut page_list) = if let Some(second) = second_page_list { in buddy_free()
546 assert!(page_list.entry_num < Self::BUDDY_ENTRIES); in buddy_free()
548 unsafe { A::write(Self::entry_virt_addr(paddr, page_list.entry_num), base) } in buddy_free()
549 page_list.entry_num += 1; in buddy_free()
550 Self::write_page(paddr, page_list); in buddy_free()
561 let mut page_list = Self::read_page::<PageList<A>>(page_list_paddr); in buddy_free() localVariable
563 while page_list.entry_num == 0 { in buddy_free()
564 if page_list.next_page.is_null() { in buddy_free()
569 page_list_paddr = page_list.next_page; in buddy_free()
570 page_list = Self::read_page(page_list_paddr); in buddy_free()
578 page_list.entry_num - 1, in buddy_free()
588 Self::entry_virt_addr(page_list_paddr, page_list.entry_num - 1), in buddy_free()
593 page_list.entry_num -= 1; in buddy_free()
594 Self::write_page(page_list_paddr, page_list); in buddy_free()
600 page_list.entry_num - 1, in buddy_free()
610 Self::entry_virt_addr(page_list_paddr, page_list.entry_num - 1), in buddy_free()
617 Self::entry_virt_addr(page_list_paddr, page_list.entry_num - 1), in buddy_free()
623 page_list.entry_num -= 1; in buddy_free()
624 Self::write_page(page_list_paddr, page_list); in buddy_free()