00001
00002
00003
00004
00005
00006 #include<linux/linkage.h>
00007 #include<linux/sched.h>
00008 #include<phddef.h>
00009 #include<sysgen.h>
00010 #include<system_data_cells.h>
00011 #include<va_rangedef.h>
00012 #include<wsldef.h>
00013
00014 int exe_adjwsl(signed int pagcnt, unsigned int *wsetlm) {
00015 struct _pcb * p=ctl_gl_pcb;
00016 int newsize;
00017
00018
00019 p->pcb_l_phd->phd$l_wssize+=pagcnt;
00020 p->pcb_l_phd->phd$l_wsquota+=pagcnt;
00021 p->pcb_l_phd->phd$l_wsextent+=pagcnt;
00022 newsize=p->pcb_l_phd->phd$l_wssize;
00023 if (pagcnt>0) {
00024 if (newsize>WSMAX) newsize=WSMAX;
00025 if (newsize>p->pcb_l_phd->phd$l_wsauthext) newsize=p->pcb$l_phd->phd$l_wsauthext;
00026
00027 }
00028 }
00029