sys/src/syscrmpsc.c File Reference

#include <linux/linkage.h>
#include <linux/sched.h>
#include <linux/vmalloc.h>
#include <linux/file.h>
#include <system_data_cells.h>
#include <descrip.h>
#include <gsddef.h>
#include <ipldef.h>
#include <ipl.h>
#include <phddef.h>
#include <rdedef.h>
#include <secdef.h>
#include <seciddef.h>
#include <starlet.h>
#include <va_rangedef.h>
#include <vmspte.h>
#include <wsldef.h>
#include <exe_routines.h>
#include <misc_routines.h>
#include <mmg_routines.h>
#include <queue.h>
#include <linux/slab.h>

Go to the source code of this file.

Functions

asmlinkage int exe_crmpsc_wrap (struct struct_crmpsc *s)
asmlinkage int exe_mgblsc_wrap (struct struct_mgblsc *s)
asmlinkage int exe_mgblsc (struct _va_range *inadr, struct _va_range *retadr, unsigned int acmode, unsigned int flags, void *gsdnam, struct _secid *ident, unsigned int relpag)
asmlinkage int exe_crmpsc (struct _va_range *inadr, struct _va_range *retadr, unsigned int acmode, unsigned int flags, void *gsdnam, unsigned long long *ident, unsigned int relpag, unsignedlong chan, unsigned int pagcnt, unsigned int vbn, unsigned int prot, unsigned int pfc)
 system service for process-private section creation - see 5.2 15.4.1


Function Documentation

asmlinkage int exe_crmpsc ( struct _va_range inadr,
struct _va_range retadr,
unsigned int  acmode,
unsigned int  flags,
void *  gsdnam,
unsigned long long *  ident,
unsigned int  relpag,
unsigned long  chan,
unsigned int  pagcnt,
unsigned int  vbn,
unsigned int  prot,
unsigned int  pfc 
)

system service for process-private section creation - see 5.2 15.4.1

Parameters:
inadr suggested address range
retadr returned address range
acmode access mode
gsd global section no short int yet

initialize scratch space - MISSING ?

call mmg vfysecflg to test flag args - MISSING - empty routine

confirm that the channel has been assigned etc - MISSING

check wheter the wcb maps the entire file - MISSING

if to be a copy-on-reference - MISSING

set ipl 2 to prevent asts

call mmg dalcstxscn to check process section table for deallocatable sections - MISSING

check for copy-on-reference - MISSING

check demand zero - MISSING

form a template pte

calculate protection and some more - MISSING

set sec flags from param

set sec vbn from param

vbn 0 check - MISSING

copy to sec unit_cnt (pagcnt) from pagcnt param

set in sec window the ccb window

check whether file has been open consistently with the flags - MISSING

if this is the first section mapped - MISSING

set sec refcnt to 1 - MISSING

set sec pfc - MISSING

form a template pte

calculate protection and some more - MISSING

set sec flags from param

set sec vbn from param

vbn 0 check - MISSING

copy to sec unit_cnt (pagcnt) from pagcnt param

set in sec window the ccb window

check whether file has been open consistently with the flags - MISSING

if this is the first section mapped - MISSING

set sec refcnt to 1 - MISSING

set sec pfc - MISSING

Definition at line 90 of file syscrmpsc.c.

References _pcb, ctl_ga_ccb_table, ctl_gl_pcb, exe_gl_gsdgrpfl, exe_gl_gsdsysfl, exe_mgblsc(), _gsd::gsd_l_basepfn, _gsd::gsd_l_flags, _gsd::gsd_l_gstx, _gsd::gsd_l_ident, _gsd::gsd_l_pcbuic, IPL__ASTDEL, kmalloc(), mmg_dalcstxscn(), mmg_fast_create(), mmg_gl_sysphd, mmg_gq_free_gpt, mmg_gq_gpt_base, mmg_gsdscn(), mmg_vfysecflg(), _mypte::pte_l_all, _mypte::pte_v_gblwrt, _mypte::pte_v_global, _mypte::pte_v_pfn, _mypte::pte_v_stx, _mypte::pte_v_typ0, _mypte::pte_v_typ1, _secdef::sec_l_ccb, _secdef::sec_l_flags, _secdef::sec_l_gsd, _secdef::sec_l_unit_cnt, _secdef::sec_l_vbn, _secdef::sec_l_vpx, _secdef::sec_l_window, SEC_M_GBL, SEC_M_SYSGBL, _va_range::va_range_ps_end_va, and _va_range::va_range_ps_start_va.

Referenced by do_mmap_pgoff(), exe_crmpsc_wrap(), and exe_imgact().

asmlinkage int exe_crmpsc_wrap ( struct struct_crmpsc s  ) 

asmlinkage int exe_mgblsc ( struct _va_range inadr,
struct _va_range retadr,
unsigned int  acmode,
unsigned int  flags,
void *  gsdnam,
struct _secid ident,
unsigned int  relpag 
)

asmlinkage int exe_mgblsc_wrap ( struct struct_mgblsc s  ) 


Generated on Fri Oct 9 10:26:02 2009 for FreeVMS by  doxygen 1.5.5