Changeset 80bcaed in mainline for kernel/genarch/include


Ignore:
Timestamp:
2007-02-03T13:22:24Z (18 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
f619ec11
Parents:
fa8e7d2
Message:

Merge as_t structure into one and leave the differring parts in as_genarch_t.

Indentation and formatting changes in header files.

Location:
kernel/genarch/include/mm
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • kernel/genarch/include/mm/as_ht.h

    rfa8e7d2 r80bcaed  
    3737
    3838#include <mm/mm.h>
    39 #include <arch/mm/asid.h>
    4039#include <adt/list.h>
    41 #include <adt/btree.h>
    42 #include <synch/mutex.h>
    43 
    44 /** Address space structure.
    45  *
    46  * as_t contains the list of as_areas of userspace accessible
    47  * pages for one or more tasks. Ranges of kernel memory pages are not
    48  * supposed to figure in the list as they are shared by all tasks and
    49  * set up during system initialization.
    50  */
    51 typedef struct {
    52         /** Protected by asidlock. */
    53         link_t inactive_as_with_asid_link;
    54 
    55         mutex_t lock;
    56 
    57         /** Number of references (i.e tasks that reference this as). */
    58         count_t refcount;
    59 
    60         /** Number of processors on wich is this address space active. */
    61         count_t cpu_refcount;
    62 
    63         /** B+tree of address space areas. */
    64         btree_t as_area_btree;
    65 
    66         /** Address space identifier. Constant on architectures that do not support ASIDs.*/
    67         asid_t asid;
    68        
    69         /** Architecture specific content. */
    70         as_arch_t arch;
    71 } as_t;
     40#include <arch/types.h>
    7241
    7342typedef struct {
     43} as_genarch_t;
     44
     45struct as;
     46
     47typedef struct pte {
    7448        link_t link;            /**< Page hash table link. */
    75         as_t *as;               /**< Address space. */
     49        struct as *as;          /**< Address space. */
    7650        uintptr_t page;         /**< Virtual memory page. */
    7751        uintptr_t frame;        /**< Physical memory frame. */
  • kernel/genarch/include/mm/as_pt.h

    rfa8e7d2 r80bcaed  
    3737
    3838#include <mm/mm.h>
    39 #include <arch/mm/asid.h>
    40 #include <adt/list.h>
    41 #include <adt/btree.h>
    42 #include <synch/mutex.h>
     39#include <arch/types.h>
    4340
    4441#define AS_PAGE_TABLE
    4542
    46 /** Address space structure.
    47  *
    48  * as_t contains the list of as_areas of userspace accessible
    49  * pages for one or more tasks. Ranges of kernel memory pages are not
    50  * supposed to figure in the list as they are shared by all tasks and
    51  * set up during system initialization.
    52  */
    5343typedef struct {
    54         /** Protected by asidlock. */
    55         link_t inactive_as_with_asid_link;
    56 
    57         mutex_t lock;
    58 
    59         /** Number of references (i.e tasks that reference this as). */
    60         count_t refcount;
    61 
    62         /** Number of processors on wich is this address space active. */
    63         count_t cpu_refcount;
    64 
    65         /** B+tree of address space areas. */
    66         btree_t as_area_btree;
    67        
    6844        /** Page table pointer. */
    6945        pte_t *page_table;
    70 
    71         /** Address space identifier. Constant on architectures that do not support ASIDs.*/
    72         asid_t asid;
    73        
    74         /** Architecture specific content. */
    75         as_arch_t arch;
    76 } as_t;
     46} as_genarch_t;
    7747
    7848#endif
  • kernel/genarch/include/mm/page_ht.h

    rfa8e7d2 r80bcaed  
    6060#define PTE_EXECUTABLE(pte)     ((pte)->x != 0)
    6161
    62 #define SET_PTL0_ADDRESS(x)
    63 
    6462extern as_operations_t as_ht_operations;
    6563extern page_mapping_operations_t ht_mapping_operations;
Note: See TracChangeset for help on using the changeset viewer.