Home | History | Annotate | Line # | Download | only in include
proc.h revision 1.10
      1   1.9     scole /*	$NetBSD: proc.h,v 1.10 2018/12/29 20:06:49 scole Exp $	*/
      2   1.6     rmind 
      3   1.1    cherry #ifndef _IA64_PROC_H_
      4   1.1    cherry #define _IA64_PROC_H_
      5   1.1    cherry 
      6   1.1    cherry #include <machine/frame.h>
      7   1.4     rmind 
      8   1.1    cherry /*
      9   1.7     scole  * Process u-area is organised as follows:
     10   1.7     scole  *
     11   1.7     scole  *   -------------------------------------------
     12   1.7     scole  *  |                      |         |    |     |
     13   1.7     scole  *  |  bspstore       sp   | 16bytes | TF | PCB |
     14   1.7     scole  *  |  ---->        <---   |         |    |     |
     15   1.7     scole  *   -------------------------------------------
     16   1.7     scole  *              -----> Higher Addresses
     17   1.7     scole  */
     18   1.7     scole 
     19   1.7     scole /*
     20   1.2     skrll  * Machine-dependent part of the lwp structure for ia64
     21   1.1    cherry  */
     22   1.1    cherry struct mdlwp {
     23   1.1    cherry 	u_long	md_flags;
     24   1.1    cherry 	struct	trapframe *md_tf;	/* trap/syscall registers */
     25   1.3     kochi 	__volatile int md_astpending;	/* AST pending for this process */
     26   1.7     scole 	void *user_stack;
     27   1.7     scole 	uint64_t user_stack_size;
     28   1.1    cherry };
     29   1.1    cherry 
     30   1.1    cherry /*
     31   1.1    cherry  * md_flags usage
     32   1.1    cherry  * --------------
     33   1.1    cherry  * XXX:
     34   1.1    cherry  */
     35   1.1    cherry 
     36   1.1    cherry struct mdproc {
     37   1.1    cherry   /* XXX: Todo */
     38   1.5  kiyohara 	void	(*md_syscall)(struct lwp *, u_int64_t, struct trapframe *);
     39   1.1    cherry 					/* Syscall handling function */
     40   1.1    cherry };
     41   1.1    cherry 
     42   1.7     scole #define UAREA_PCB_OFFSET	(USPACE - sizeof(struct pcb))
     43   1.7     scole #define UAREA_TF_OFFSET		(UAREA_PCB_OFFSET - sizeof(struct trapframe))
     44  1.10     scole #define UAREA_SP_OFFSET		(UAREA_TF_OFFSET - 16)
     45   1.7     scole #define UAREA_BSPSTORE_OFFSET	(0)
     46  1.10     scole #define UAREA_STACK_SIZE	(USPACE - 16 - sizeof(struct trapframe) - sizeof(struct pcb))
     47   1.7     scole 
     48   1.1    cherry #endif /* _IA64_PROC_H_ */
     49