Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/mm/as.h

    rae6021d r908bb96  
    4242#include <arch/mm/asid.h>
    4343#include <arch/istate.h>
     44#include <typedefs.h>
    4445#include <synch/spinlock.h>
    4546#include <synch/mutex.h>
     
    4748#include <adt/btree.h>
    4849#include <lib/elf.h>
    49 #include <arch.h>
    50 
    51 #define AS                   THE->as
    52 
    5350
    5451/**
     
    143140        /** This structure can be deallocated if refcount drops to 0. */
    144141        size_t refcount;
    145         /** True if the area has been ever shared. */
    146         bool shared;
    147 
     142       
    148143        /**
    149144         * B+tree containing complete map of anonymous pages of the shared area.
    150145         */
    151146        btree_t pagemap;
    152 
    153         /** Address space area backend. */
    154         struct mem_backend *backend;
    155         /** Address space area shared data. */
    156         void *backend_shared_data;
    157147} share_info_t;
    158148
     
    169159/** Backend data stored in address space area. */
    170160typedef union mem_backend_data {
    171         /* anon_backend members */
    172         struct {
    173         };
    174 
    175161        /** elf_backend members */
    176162        struct {
     
    183169                uintptr_t base;
    184170                size_t frames;
    185                 bool anonymous;
    186171        };
    187 
    188         /** user_backend members */
    189         struct {
    190                 as_area_pager_info_t pager_info;
    191         };
    192 
    193172} mem_backend_data_t;
    194173
     
    247226        int (* page_fault)(as_area_t *, uintptr_t, pf_access_t);
    248227        void (* frame_free)(as_area_t *, uintptr_t, uintptr_t);
    249 
    250         bool (* create_shared_data)(as_area_t *);
    251         void (* destroy_shared_data)(void *);
    252228} mem_backend_t;
    253229
     
    306282extern mem_backend_t elf_backend;
    307283extern mem_backend_t phys_backend;
    308 extern mem_backend_t user_backend;
    309284
    310285/* Address space area related syscalls. */
    311 extern sysarg_t sys_as_area_create(uintptr_t, size_t, unsigned int, uintptr_t,
    312     as_area_pager_info_t *);
     286extern sysarg_t sys_as_area_create(uintptr_t, size_t, unsigned int, uintptr_t);
    313287extern sysarg_t sys_as_area_resize(uintptr_t, size_t, unsigned int);
    314288extern sysarg_t sys_as_area_change_flags(uintptr_t, unsigned int);
Note: See TracChangeset for help on using the changeset viewer.