From: Kenn H. <ke...@us...> - 2001-01-23 23:48:18
|
Update of /cvsroot/linux-vax/kernel-2.4/include/asm-vax In directory usw-pr-cvs1:/tmp/cvs-serv29563 Modified Files: pcb.h Log Message: Correct PCB structure definition and simplify INIT_PCB initializer Index: pcb.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-vax/pcb.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** pcb.h 2001/01/22 16:46:55 1.2 --- pcb.h 2001/01/23 23:48:35 1.3 *************** *** 2,11 **** #define _VAX_PCB_H /* process control block structure */ /* Copyright atp 1998. For Linux/Vax. */ /* reference: VAX Hardware Manual pg 260 */ - /* FIXME: sort out p0br and p1br subfields */ - struct vax_pcb { unsigned long int ksp; --- 2,11 ---- #define _VAX_PCB_H + #include <asm/psl.h> + /* process control block structure */ /* Copyright atp 1998. For Linux/Vax. */ /* reference: VAX Hardware Manual pg 260 */ struct vax_pcb { unsigned long int ksp; *************** *** 24,65 **** unsigned long int r9; unsigned long int r10; ! unsigned long int r11; /* note this is used in current.h */ unsigned long int ap; unsigned long int fp; unsigned long int pc; ! unsigned long int psl; unsigned long int p0br; ! unsigned long int p0lr; /* bits 0:21. astlvl is bits 24:26 */ unsigned long int p1br; ! unsigned long int p1lr; /* pme is bit 31 */ }; ! /* Process control block initialiser used in INIT_THREAD*/ ! #define INIT_PCB { \ ! ksp: 0, \ ! esp: 0, \ ! ssp: 0, /* null ? */ \ ! usp: 0, \ ! r0: 0, \ ! r1: 0, \ ! r2: 0, \ ! r3: 0, \ ! r4: 0, \ ! r5: 0, \ ! r6: 0, \ ! r7: 0, \ ! r8: 0, \ ! r9: 0, \ ! r10: 0, \ ! r11: 0, \ ! ap: 0, \ ! fp: 0, \ ! pc: 0, \ ! psl: 0, \ ! p0br: 0, \ ! p0lr: 0, /* bits 0:21. astlvl is bits 24:26 */ \ ! p1br: 0, \ ! p1lr: 0 /* pme is bit 31 *: */ \ ! } #endif /* _VAX_PCB_H */ --- 24,46 ---- unsigned long int r9; unsigned long int r10; ! unsigned long int r11; unsigned long int ap; unsigned long int fp; unsigned long int pc; ! struct psl_fields psl; unsigned long int p0br; ! unsigned long int p0lr:22; ! unsigned long int mbz1:2; /* reserved, MBZ */ ! unsigned long int astlvl:3; ! unsigned long int mbz2:5; /* reserved, MBZ */ unsigned long int p1br; ! unsigned long int p1lr; ! unsigned long int mbz3:7; /* reserved, MBZ */ ! unsigned long int pme:1; }; + + /* Process control block initialiser used in INIT_THREAD */ ! #define INIT_PCB { 0 } /* fill complete structure with zeroes */ #endif /* _VAX_PCB_H */ |