jbra...@dismail.de, le ven. 18 oct. 2024 10:20:06 -0400, a ecrit:
> * i386/intel/pmap.c: removed these unused functions:
> pmap_page_table_page_dealloc

pmap_page_table_page_dealloc is used in the xen case, so rather add the
corresponding ifdef.

> and pmap_page_table_page_alloc

It is actually surprising that it'd be unused, it most probably should
be used corresponding to the pmap_page_table_page_dealloc calls. It
should rather not be removed, since the function does make sense, better
not forget how it was supposed to be written.

Samuel

> i386/intel/pmap.c:1265:1: warning: 'pmap_page_table_page_dealloc' defined but 
> not used [-Wunused-function]
>  1265 | pmap_page_table_page_dealloc(vm_offset_t pa)
>       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> i386/intel/pmap.c:1171:1: warning: 'pmap_page_table_page_alloc' defined but 
> not used [-Wunused-function]
>  1171 | pmap_page_table_page_alloc(void)
>       | ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ---
>  i386/intel/pmap.c | 76 -----------------------------------------------
>  1 file changed, 76 deletions(-)
> 
> diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
> index 94c580e7..deaa348c 100644
> --- a/i386/intel/pmap.c
> +++ b/i386/intel/pmap.c
> @@ -1159,58 +1159,6 @@ valid_page(phys_addr_t addr)
>       return (p != NULL);
>  }
>  
> -/*
> - *   Routine:        pmap_page_table_page_alloc
> - *
> - *   Allocates a new physical page to be used as a page-table page.
> - *
> - *   Must be called with the pmap system and the pmap unlocked,
> - *   since these must be unlocked to use vm_page_grab.
> - */
> -static vm_offset_t
> -pmap_page_table_page_alloc(void)
> -{
> -     vm_page_t       m;
> -     phys_addr_t     pa;
> -
> -     check_simple_locks();
> -
> -     /*
> -      *      We cannot allocate the pmap_object in pmap_init,
> -      *      because it is called before the cache package is up.
> -      *      Allocate it now if it is missing.
> -      */
> -     if (pmap_object == VM_OBJECT_NULL)
> -         pmap_object = vm_object_allocate(vm_page_table_size() * PAGE_SIZE);
> -
> -     /*
> -      *      Allocate a VM page for the level 2 page table entries.
> -      */
> -     while ((m = vm_page_grab(VM_PAGE_DIRECTMAP)) == VM_PAGE_NULL)
> -             VM_PAGE_WAIT((void (*)()) 0);
> -
> -     /*
> -      *      Map the page to its physical address so that it
> -      *      can be found later.
> -      */
> -     pa = m->phys_addr;
> -     assert(pa == (vm_offset_t) pa);
> -     vm_object_lock(pmap_object);
> -     vm_page_insert(m, pmap_object, pa);
> -     vm_page_lock_queues();
> -     vm_page_wire(m);
> -     inuse_ptepages_count++;
> -     vm_page_unlock_queues();
> -     vm_object_unlock(pmap_object);
> -
> -     /*
> -      *      Zero the page.
> -      */
> -     memset((void *)phystokv(pa), 0, PAGE_SIZE);
> -
> -     return pa;
> -}
> -
>  #ifdef       MACH_XEN
>  void pmap_map_mfn(void *_addr, unsigned long mfn) {
>       vm_offset_t addr = (vm_offset_t) _addr;
> @@ -1256,30 +1204,6 @@ void pmap_map_mfn(void *_addr, unsigned long mfn) {
>  }
>  #endif       /* MACH_XEN */
>  
> -/*
> - *   Deallocate a page-table page.
> - *   The page-table page must have all mappings removed,
> - *   and be removed from its page directory.
> - */
> -static void
> -pmap_page_table_page_dealloc(vm_offset_t pa)
> -{
> -     vm_page_t       m;
> -
> -     vm_object_lock(pmap_object);
> -     m = vm_page_lookup(pmap_object, pa);
> -     vm_page_lock_queues();
> -#ifdef       MACH_PV_PAGETABLES
> -        if (!hyp_mmuext_op_mfn (MMUEXT_UNPIN_TABLE, pa_to_mfn(pa)))
> -                panic("couldn't unpin page %llx(%lx)\n", pa, (vm_offset_t) 
> kv_to_ma(pa));
> -        pmap_set_page_readwrite((void*) phystokv(pa));
> -#endif       /* MACH_PV_PAGETABLES */
> -     vm_page_free(m);
> -     inuse_ptepages_count--;
> -     vm_page_unlock_queues();
> -     vm_object_unlock(pmap_object);
> -}
> -
>  /*
>   *   Create and return a physical map.
>   *
> -- 
> 2.45.2
> 
> 

-- 
Samuel
(03:13:14) <j> bon
(03:13:19) <j> il est tard :p
(03:13:25) <g> c'est l'heure de manger
(03:13:38) <j> hm j'ai mangé à 1h moi, j'ai des horaires raisonnables

Reply via email to