The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/kern/syscall_sw.c

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /* 
    2  * Mach Operating System
    3  * Copyright (c) 1991,1990,1989,1988,1987 Carnegie Mellon University
    4  * All Rights Reserved.
    5  * 
    6  * Permission to use, copy, modify and distribute this software and its
    7  * documentation is hereby granted, provided that both the copyright
    8  * notice and this permission notice appear in all copies of the
    9  * software, derivative works or modified versions, and any portions
   10  * thereof, and that both notices appear in supporting documentation.
   11  * 
   12  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
   13  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
   14  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
   15  * 
   16  * Carnegie Mellon requests users of this software to return to
   17  * 
   18  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
   19  *  School of Computer Science
   20  *  Carnegie Mellon University
   21  *  Pittsburgh PA 15213-3890
   22  * 
   23  * any improvements or extensions that they make and grant Carnegie Mellon
   24  * the rights to redistribute these changes.
   25  */
   26 /*
   27  * HISTORY
   28  * $Log:        syscall_sw.c,v $
   29  * Revision 2.16  93/08/10  15:11:27  mrt
   30  *      Put atm traps under NET_ATM conditional.
   31  *      [93/08/02            cmaeda]
   32  *      Moved syscall_device_writev_request to 39 since it
   33  *      was conflicting with init_process at 41.  Added
   34  *      comments to trap numbers that are unixoid traps
   35  *      handled by emulator.
   36  *      [93/07/19            cmaeda]
   37  * 
   38  *      Added device_write traps.
   39  *      [93/07/03            cmaeda]
   40  * 
   41  *      Added evc_wait_clear.  Very similar to evc_wait.
   42  *      [93/07/03            cmaeda]
   43  * 
   44  *      Included traps for network interface.
   45  *      [93/06/09  15:42:13  jcb]
   46  * 
   47  * Revision 2.15  92/08/03  17:39:34  jfriedl
   48  *      removed silly prototypes
   49  *      [92/08/02            jfriedl]
   50  * 
   51  * Revision 2.14  92/05/21  17:16:12  jfriedl
   52  *      tried prototypes.
   53  *      [92/05/20            jfriedl]
   54  * 
   55  * Revision 2.13  92/02/19  16:06:58  elf
   56  *      Added syscall_thread_depress_abort.
   57  *      [92/01/20            rwd]
   58  * 
   59  * Revision 2.12  92/01/03  20:40:19  dbg
   60  *      Use continuations always in evc_wait.
   61  *      [91/12/27            af]
   62  * 
   63  * Revision 2.11  91/12/13  14:54:49  jsb
   64  *      Added evc_wait().
   65  *      [91/12/12  17:42:00  af]
   66  * 
   67  * Revision 2.10  91/05/14  16:47:45  mrt
   68  *      Correcting copyright
   69  * 
   70  * Revision 2.9  91/03/16  14:52:12  rpd
   71  *      Changed swtch, swtch_pri, and thread_switch to MACH_TRAP_STACK.
   72  *      [91/01/17            rpd]
   73  * 
   74  * Revision 2.8  91/02/05  17:29:44  mrt
   75  *      Changed to new Mach copyright
   76  *      [91/02/01  16:18:37  mrt]
   77  * 
   78  * Revision 2.7  91/01/08  15:17:21  rpd
   79  *      Changed to use MACH_TRAP_STACK appropriately.
   80  *      [90/12/27  21:20:57  rpd]
   81  * 
   82  * Revision 2.6  90/09/09  14:32:58  rpd
   83  *      Added mach_port_allocate_name
   84  *      [90/09/05            rwd]
   85  * 
   86  * Revision 2.5  90/06/19  22:59:30  rpd
   87  *      Added mach_port_allocate, mach_port_deallocate, mach_port_insert_right.
   88  *      [90/06/02            rpd]
   89  * 
   90  * Revision 2.4  90/06/02  14:56:26  rpd
   91  *      Updated for new IPC and scheduling technology.
   92  *      [90/03/26  22:20:34  rpd]
   93  * 
   94  * Revision 2.3  90/05/29  18:36:48  rwd
   95  *      New traps from rfr (vm_map, task_create etc.)
   96  *      [90/04/20            rwd]
   97  * 
   98  * Revision 2.2  89/10/16  15:22:13  rwd
   99  *      Added debug option for kern_invalid.
  100  *      [89/09/29            rwd]
  101  * 
  102  *      Made swtch_pri trap call swtch, ignoring priority argument (it
  103  *      scrambles scheduling).
  104  *      [89/02/02            dbg]
  105  * 
  106  *      Removed all non-MACH calls and options.
  107  *      [88/10/28            dbg]
  108  * 
  109  * Revision 2.1  89/08/03  15:51:36  rwd
  110  * Created.
  111  * 
  112  * Revision 2.8  89/03/05  16:48:24  rpd
  113  *      Renamed the obsolete msg_{send,receive,rpc} traps to
  114  *      msg_{send,receive,rpc}_old.
  115  *      [89/02/15  13:50:10  rpd]
  116  * 
  117  * Revision 2.7  89/02/25  18:09:05  gm0w
  118  *      Changes for cleanup.
  119  * 
  120  * Revision 2.6  89/01/10  23:32:13  rpd
  121  *      Added MACH_IPC_XXXHACK conditionals around the obsolete IPC traps.
  122  *      [89/01/10  23:10:07  rpd]
  123  * 
  124  * Revision 2.5  88/12/19  02:47:31  mwyoung
  125  *      Removed old MACH conditionals.
  126  *      [88/12/13            mwyoung]
  127  * 
  128  * Revision 2.4  88/10/27  10:48:53  rpd
  129  *      Changed msg_{send,receive,rpc}_trap to 20, 21, 22.
  130  *      [88/10/26  14:45:13  rpd]
  131  * 
  132  * Revision 2.3  88/10/11  10:20:33  rpd
  133  *      Changed includes to the new style.  Replaced msg_receive_,
  134  *      msg_rpc_ with msg_send_trap, msg_receive_trap, msg_rpc_trap.
  135  *      [88/10/06  12:22:30  rpd]
  136  * 
  137  *  7-Apr-88  David Black (dlb) at Carnegie-Mellon University
  138  *      removed thread_times().
  139  *
  140  * 18-Jan-88  David Golub (dbg) at Carnegie-Mellon University
  141  *      Replaced task_data with thread_reply; change is invisible to
  142  *      users.
  143  *
  144  * 03-Mar-88  Douglas Orr (dorr) at Carnegie-Mellon University
  145  *      Added htg_unix_syscall()
  146  *
  147  * 27-Apr-87  Michael Young (mwyoung) at Carnegie-Mellon University
  148  *      Added new forms of msg_receive, msg_rpc.
  149  *
  150  *  1-Apr-87  William Bolosky (bolosky) at Carnegie-Mellon University
  151  *      Added "WARNING:" comment.
  152  *
  153  * 30-Mar-87  David Black (dlb) at Carnegie-Mellon University
  154  *      Added kern_timestamp()
  155  *
  156  * 27-Mar-87  David Black (dlb) at Carnegie-Mellon University
  157  *      Added thread_times() for MACH_TIME_NEW.  Flushed MACH_TIME.
  158  *
  159  * 25-Mar-87  Avadis Tevanian (avie) at Carnegie-Mellon University
  160  *      Added map_fd.
  161  *
  162  * 27-Feb-87  Michael Young (mwyoung) at Carnegie-Mellon University
  163  *      MACH_IPC: Turn off Accent compatibility traps.
  164  *
  165  *  4-Feb-87  Michael Young (mwyoung) at Carnegie-Mellon University
  166  *      Added ctimes() routine, to make a workable restore program.
  167  *
  168  * 10-Nov-86  Michael Young (mwyoung) at Carnegie-Mellon University
  169  *      Eliminated KPortToPID.
  170  *
  171  *  7-Nov-86  Michael Young (mwyoung) at Carnegie-Mellon University
  172  *      Added "init_process".
  173  *
  174  * 29-Oct-86  Michael Young (mwyoung) at Carnegie-Mellon University
  175  *      Added inode_swap_preference.
  176  *
  177  * 12-Oct-86  Michael Young (mwyoung) at Carnegie-Mellon University
  178  *      Major reorganization: added msg_send, msg_receive, msg_rpc;
  179  *      moved real Mach traps up front; renamed table.
  180  */
  181 
  182 #include <mach_ipc_compat.h>
  183 #include <net_atm.h>
  184 
  185 #include <mach/port.h>
  186 #include <mach/kern_return.h>
  187 #include <kern/syscall_sw.h>
  188 
  189 /* Include declarations of the trap functions. */
  190 #include <mach/mach_traps.h>
  191 #include <mach/message.h>
  192 #include <kern/syscall_subr.h>
  193 #include <chips/nw_mk.h>
  194 
  195 
  196 /*
  197  *      To add a new entry:
  198  *              Add an "MACH_TRAP(routine, arg count)" to the table below.
  199  *
  200  *              Add trap definition to mach/syscall_sw.h and
  201  *              recompile user library.
  202  *
  203  * WARNING:     If you add a trap which requires more than 7
  204  *              parameters, mach/ca/syscall_sw.h and ca/trap.c both need
  205  *              to be modified for it to work successfully on an
  206  *              RT.  Similarly, mach/mips/syscall_sw.h and mips/locore.s
  207  *              need to be modified before it will work on Pmaxen.
  208  *
  209  * WARNING:     Don't use numbers 0 through -9.  They (along with
  210  *              the positive numbers) are reserved for Unix.
  211  */
  212 
  213 int kern_invalid_debug = 0;
  214 
  215 mach_port_t     null_port()
  216 {
  217         if (kern_invalid_debug) Debugger("null_port mach trap");
  218         return(MACH_PORT_NULL);
  219 }
  220 
  221 kern_return_t   kern_invalid()
  222 {
  223         if (kern_invalid_debug) Debugger("kern_invalid mach trap");
  224         return(KERN_INVALID_ARGUMENT);
  225 }
  226 
  227 extern  kern_return_t   syscall_vm_map();
  228 extern  kern_return_t   syscall_vm_allocate();
  229 extern  kern_return_t   syscall_vm_deallocate();
  230 
  231 extern  kern_return_t   syscall_task_create();
  232 extern  kern_return_t   syscall_task_terminate();
  233 extern  kern_return_t   syscall_task_suspend();
  234 extern  kern_return_t   syscall_task_set_special_port();
  235 
  236 extern  kern_return_t   syscall_mach_port_allocate();
  237 extern  kern_return_t   syscall_mach_port_deallocate();
  238 extern  kern_return_t   syscall_mach_port_insert_right();
  239 extern  kern_return_t   syscall_mach_port_allocate_name();
  240 
  241 extern  kern_return_t   syscall_thread_depress_abort();
  242 extern  kern_return_t   evc_wait();
  243 extern  kern_return_t   evc_wait_clear();
  244 
  245 extern  kern_return_t   syscall_device_write_request();
  246 extern  kern_return_t   syscall_device_writev_request();
  247 
  248 mach_trap_t     mach_trap_table[] = {
  249         MACH_TRAP(kern_invalid, 0),             /* 0 */         /* Unix */
  250         MACH_TRAP(kern_invalid, 0),             /* 1 */         /* Unix */
  251         MACH_TRAP(kern_invalid, 0),             /* 2 */         /* Unix */
  252         MACH_TRAP(kern_invalid, 0),             /* 3 */         /* Unix */
  253         MACH_TRAP(kern_invalid, 0),             /* 4 */         /* Unix */
  254         MACH_TRAP(kern_invalid, 0),             /* 5 */         /* Unix */
  255         MACH_TRAP(kern_invalid, 0),             /* 6 */         /* Unix */
  256         MACH_TRAP(kern_invalid, 0),             /* 7 */         /* Unix */
  257         MACH_TRAP(kern_invalid, 0),             /* 8 */         /* Unix */
  258         MACH_TRAP(kern_invalid, 0),             /* 9 */         /* Unix */
  259 
  260 #if     MACH_IPC_COMPAT
  261         MACH_TRAP(task_self, 0),                /* 10 */        /* obsolete */
  262         MACH_TRAP(thread_reply, 0),             /* 11 */        /* obsolete */
  263         MACH_TRAP(task_notify, 0),              /* 12 */        /* obsolete */
  264         MACH_TRAP(thread_self, 0),              /* 13 */        /* obsolete */
  265 #else   /* MACH_IPC_COMPAT */
  266         MACH_TRAP(null_port, 0),                /* 10 */
  267         MACH_TRAP(null_port, 0),                /* 11 */
  268         MACH_TRAP(null_port, 0),                /* 12 */
  269         MACH_TRAP(null_port, 0),                /* 13 */
  270 #endif  /* MACH_IPC_COMPAT */
  271         MACH_TRAP(kern_invalid, 0),             /* 14 */
  272         MACH_TRAP(kern_invalid, 0),             /* 15 */
  273         MACH_TRAP(kern_invalid, 0),             /* 16 */
  274         MACH_TRAP_STACK(evc_wait, 1),           /* 17 */
  275         MACH_TRAP_STACK(evc_wait_clear, 1),     /* 18 */
  276         MACH_TRAP(kern_invalid, 0),             /* 19 */
  277 
  278 #if     MACH_IPC_COMPAT
  279         MACH_TRAP(msg_send_trap, 4),            /* 20 */        /* obsolete */
  280         MACH_TRAP_STACK(msg_receive_trap, 5),   /* 21 */        /* obsolete */
  281         MACH_TRAP_STACK(msg_rpc_trap, 6),       /* 22 */        /* obsolete */
  282 #else   /* MACH_IPC_COMPAT */
  283         MACH_TRAP(kern_invalid, 0),             /* 20 */
  284         MACH_TRAP(kern_invalid, 0),             /* 21 */
  285         MACH_TRAP(kern_invalid, 0),             /* 22 */
  286 #endif  /* MACH_IPC_COMPAT */
  287         MACH_TRAP(kern_invalid, 0),             /* 23 */
  288         MACH_TRAP(kern_invalid, 0),             /* 24 */
  289         MACH_TRAP_STACK(mach_msg_trap, 7),      /* 25 */
  290         MACH_TRAP(mach_reply_port, 0),          /* 26 */
  291         MACH_TRAP(mach_thread_self, 0),         /* 27 */
  292         MACH_TRAP(mach_task_self, 0),           /* 28 */
  293         MACH_TRAP(mach_host_self, 0),           /* 29 */
  294 
  295         MACH_TRAP(kern_invalid, 0),             /* 30 */
  296         MACH_TRAP(kern_invalid, 0),             /* 31 */
  297         MACH_TRAP(kern_invalid, 0),             /* 32 */
  298         MACH_TRAP(kern_invalid, 0),             /* 33 emul: task_by_pid */
  299         MACH_TRAP(kern_invalid, 0),             /* 34 emul: pid_by_task */
  300         MACH_TRAP(kern_invalid, 0),             /* 35 */
  301         MACH_TRAP(kern_invalid, 0),             /* 36 */
  302         MACH_TRAP(kern_invalid, 0),             /* 37 */
  303         MACH_TRAP(kern_invalid, 0),             /* 38 */
  304 
  305         MACH_TRAP(syscall_device_writev_request, 6),    /* 39 */
  306         MACH_TRAP(syscall_device_write_request, 6),     /* 40 */
  307 
  308         MACH_TRAP(kern_invalid, 0),             /* 41 emul: init_process */
  309         MACH_TRAP(kern_invalid, 0),             /* 42 */
  310         MACH_TRAP(kern_invalid, 0),             /* 43 emul: map_fd */
  311         MACH_TRAP(kern_invalid, 0),             /* 44 emul: rfs_make_symlink */
  312         MACH_TRAP(kern_invalid, 0),             /* 45 */
  313         MACH_TRAP(kern_invalid, 0),             /* 46 */
  314         MACH_TRAP(kern_invalid, 0),             /* 47 */
  315         MACH_TRAP(kern_invalid, 0),             /* 48 */
  316         MACH_TRAP(kern_invalid, 0),             /* 49 */
  317 
  318         MACH_TRAP(kern_invalid, 0),             /* 50 */
  319         MACH_TRAP(kern_invalid, 0),             /* 51 */
  320         MACH_TRAP(kern_invalid, 0),             /* 52 emul: htg_syscall */
  321         MACH_TRAP(kern_invalid, 0),             /* 53 emul: set_ras_address */
  322         MACH_TRAP(kern_invalid, 0),             /* 54 */
  323 #if     MACH_IPC_COMPAT
  324         MACH_TRAP(host_self, 0),                /* 55 */
  325 #else   /* MACH_IPC_COMPAT */
  326         MACH_TRAP(null_port, 0),                /* 55 */
  327 #endif  /* MACH_IPC_COMPAT */
  328         MACH_TRAP(null_port, 0),                /* 56 */
  329         MACH_TRAP(kern_invalid, 0),             /* 57 */
  330         MACH_TRAP(kern_invalid, 0),             /* 58 */
  331         MACH_TRAP_STACK(swtch_pri, 1),          /* 59 */
  332 
  333         MACH_TRAP_STACK(swtch, 0),              /* 60 */
  334         MACH_TRAP_STACK(thread_switch, 3),      /* 61 */
  335         MACH_TRAP(kern_invalid, 0),             /* 62 */
  336         MACH_TRAP(kern_invalid, 0),             /* 63 */
  337         MACH_TRAP(syscall_vm_map, 11),                  /* 64 */
  338         MACH_TRAP(syscall_vm_allocate, 4),              /* 65 */
  339         MACH_TRAP(syscall_vm_deallocate, 3),            /* 66 */
  340         MACH_TRAP(kern_invalid, 0),                     /* 67 */
  341         MACH_TRAP(syscall_task_create, 3),              /* 68 */
  342         MACH_TRAP(syscall_task_terminate, 1),           /* 69 */
  343 
  344         MACH_TRAP(syscall_task_suspend, 1),             /* 70 */
  345         MACH_TRAP(syscall_task_set_special_port, 3),    /* 71 */
  346         MACH_TRAP(syscall_mach_port_allocate, 3),       /* 72 */
  347         MACH_TRAP(syscall_mach_port_deallocate, 2),     /* 73 */
  348         MACH_TRAP(syscall_mach_port_insert_right, 4),   /* 74 */
  349         MACH_TRAP(syscall_mach_port_allocate_name, 3),  /* 75 */
  350         MACH_TRAP(syscall_thread_depress_abort, 1),     /* 76 */
  351         MACH_TRAP(kern_invalid, 0),             /* 77 */
  352         MACH_TRAP(kern_invalid, 0),             /* 78 */
  353         MACH_TRAP(kern_invalid, 0),             /* 79 */
  354 
  355 #if     NET_ATM
  356         MACH_TRAP(mk_update,3),                       /* 80 */
  357         MACH_TRAP(mk_lookup,2),                       /* 81 */
  358         MACH_TRAP_STACK(mk_endpoint_allocate,4),      /* 82 */
  359         MACH_TRAP_STACK(mk_endpoint_deallocate,1),    /* 83 */
  360         MACH_TRAP(mk_buffer_allocate,2),              /* 84 */
  361         MACH_TRAP(mk_buffer_deallocate,2),            /* 85 */
  362         MACH_TRAP_STACK(mk_connection_open,4),        /* 86 */
  363         MACH_TRAP_STACK(mk_connection_accept,3),      /* 87 */
  364         MACH_TRAP_STACK(mk_connection_close,1),       /* 88 */
  365         MACH_TRAP_STACK(mk_multicast_add,4),          /* 89 */
  366         MACH_TRAP_STACK(mk_multicast_drop,4),         /* 90 */
  367         MACH_TRAP(mk_endpoint_status,3),              /* 91 */
  368         MACH_TRAP_STACK(mk_send,3),                   /* 92 */
  369         MACH_TRAP_STACK(mk_receive,2),                /* 93 */
  370         MACH_TRAP_STACK(mk_rpc,4),                    /* 94 */
  371         MACH_TRAP_STACK(mk_select,3),                 /* 95 */
  372 #else   /* NET_ATM */
  373         MACH_TRAP(kern_invalid, 0),                   /* 80 */
  374         MACH_TRAP(kern_invalid, 0),                   /* 81 */
  375         MACH_TRAP(kern_invalid, 0),                   /* 82 */
  376         MACH_TRAP(kern_invalid, 0),                   /* 83 */
  377         MACH_TRAP(kern_invalid, 0),                   /* 84 */
  378         MACH_TRAP(kern_invalid, 0),                   /* 85 */
  379         MACH_TRAP(kern_invalid, 0),                   /* 86 */
  380         MACH_TRAP(kern_invalid, 0),                   /* 87 */
  381         MACH_TRAP(kern_invalid, 0),                   /* 88 */
  382         MACH_TRAP(kern_invalid, 0),                   /* 89 */
  383         MACH_TRAP(kern_invalid, 0),                   /* 90 */
  384         MACH_TRAP(kern_invalid, 0),                   /* 91 */
  385         MACH_TRAP(kern_invalid, 0),                   /* 92 */
  386         MACH_TRAP(kern_invalid, 0),                   /* 93 */
  387         MACH_TRAP(kern_invalid, 0),                   /* 94 */
  388         MACH_TRAP(kern_invalid, 0),                   /* 95 */
  389 #endif  /* NET_ATM */
  390 
  391         MACH_TRAP(kern_invalid, 0),                   /* 96 */
  392         MACH_TRAP(kern_invalid, 0),                   /* 97 */
  393         MACH_TRAP(kern_invalid, 0),                   /* 98 */
  394         MACH_TRAP(kern_invalid, 0),                   /* 99 */
  395 
  396         MACH_TRAP(kern_invalid, 0),             /* 100 */
  397         MACH_TRAP(kern_invalid, 0),             /* 101 */
  398         MACH_TRAP(kern_invalid, 0),             /* 102 */
  399         MACH_TRAP(kern_invalid, 0),             /* 103 */
  400         MACH_TRAP(kern_invalid, 0),             /* 104 */
  401         MACH_TRAP(kern_invalid, 0),             /* 105 */
  402         MACH_TRAP(kern_invalid, 0),             /* 106 */
  403         MACH_TRAP(kern_invalid, 0),             /* 107 */
  404         MACH_TRAP(kern_invalid, 0),             /* 108 */
  405         MACH_TRAP(kern_invalid, 0),             /* 109 */
  406 
  407         MACH_TRAP(kern_invalid, 0),             /* 110 */
  408         MACH_TRAP(kern_invalid, 0),             /* 111 */
  409         MACH_TRAP(kern_invalid, 0),             /* 112 */
  410         MACH_TRAP(kern_invalid, 0),             /* 113 */
  411         MACH_TRAP(kern_invalid, 0),             /* 114 */
  412         MACH_TRAP(kern_invalid, 0),             /* 115 */
  413         MACH_TRAP(kern_invalid, 0),             /* 116 */
  414         MACH_TRAP(kern_invalid, 0),             /* 117 */
  415         MACH_TRAP(kern_invalid, 0),             /* 118 */
  416         MACH_TRAP(kern_invalid, 0),             /* 119 */
  417 
  418         MACH_TRAP(kern_invalid, 0),             /* 120 */
  419         MACH_TRAP(kern_invalid, 0),             /* 121 */
  420         MACH_TRAP(kern_invalid, 0),             /* 122 */
  421         MACH_TRAP(kern_invalid, 0),             /* 123 */
  422         MACH_TRAP(kern_invalid, 0),             /* 124 */
  423         MACH_TRAP(kern_invalid, 0),             /* 125 */
  424         MACH_TRAP(kern_invalid, 0),             /* 126 */
  425         MACH_TRAP(kern_invalid, 0),             /* 127 */
  426         MACH_TRAP(kern_invalid, 0),             /* 128 */
  427         MACH_TRAP(kern_invalid, 0),             /* 129 */
  428 };
  429 
  430 int     mach_trap_count = (sizeof(mach_trap_table) / sizeof(mach_trap_table[0]));

Cache object: fcda7110b782e3e701cdf8d1e269bf48


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.