Subversion Repositories HelenOS

Rev

Rev 3448 | Rev 4341 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. /*
  2.  * Copyright (c) 2008 Jiri Svoboda
  3.  * All rights reserved.
  4.  *
  5.  * Redistribution and use in source and binary forms, with or without
  6.  * modification, are permitted provided that the following conditions
  7.  * are met:
  8.  *
  9.  * - Redistributions of source code must retain the above copyright
  10.  *   notice, this list of conditions and the following disclaimer.
  11.  * - Redistributions in binary form must reproduce the above copyright
  12.  *   notice, this list of conditions and the following disclaimer in the
  13.  *   documentation and/or other materials provided with the distribution.
  14.  * - The name of the author may not be used to endorse or promote products
  15.  *   derived from this software without specific prior written permission.
  16.  *
  17.  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  18.  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  19.  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  20.  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
  21.  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
  22.  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  23.  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  24.  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  25.  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  26.  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  27.  */
  28.  
  29. /** @addtogroup trace
  30.  * @{
  31.  */
  32. /** @file
  33.  */
  34.  
  35. #include <kernel/syscall/syscall.h>
  36. #include "syscalls.h"
  37. #include "trace.h"
  38.  
  39. const sc_desc_t syscall_desc[] = {
  40.     [SYS_KLOG] ={ "klog",               3,  V_INT_ERRNO },
  41.     [SYS_TLS_SET] = { "tls_set",            1,  V_ERRNO },
  42.     [SYS_THREAD_CREATE] = { "thread_create",        3,  V_ERRNO },
  43.     [SYS_THREAD_EXIT] = { "thread_exit",        1,  V_ERRNO },
  44.     [SYS_THREAD_GET_ID] = { "thread_get_id",        1,  V_ERRNO },
  45.  
  46.     [SYS_TASK_GET_ID] = { "task_get_id",        1,  V_ERRNO },
  47.     [SYS_FUTEX_SLEEP] = { "futex_sleep_timeout",    3,  V_ERRNO },
  48.     [SYS_FUTEX_WAKEUP] = { "futex_wakeup",      1,  V_ERRNO },
  49.  
  50.     [SYS_AS_AREA_CREATE] = { "as_area_create",      3,  V_ERRNO },
  51.     [SYS_AS_AREA_RESIZE] = { "as_area_resize",      3,  V_ERRNO },
  52.     [SYS_AS_AREA_DESTROY] = { "as_area_destroy",    1,  V_ERRNO },
  53.  
  54.     [SYS_IPC_CALL_SYNC_FAST] = { "ipc_call_sync_fast",  6,  V_ERRNO },
  55.     [SYS_IPC_CALL_SYNC_SLOW] = { "ipc_call_sync_slow",  3,  V_ERRNO },
  56.     [SYS_IPC_CALL_ASYNC_FAST] = { "ipc_call_async_fast", 6, V_HASH },
  57.     [SYS_IPC_CALL_ASYNC_SLOW] = { "ipc_call_async_slow", 2, V_HASH },
  58.  
  59.     [SYS_IPC_ANSWER_FAST] = { "ipc_answer_fast",    6,  V_ERRNO },
  60.     [SYS_IPC_ANSWER_SLOW] = { "ipc_answer_slow",    2,  V_ERRNO },
  61.     [SYS_IPC_FORWARD_FAST] = { "ipc_forward_fast",  6,  V_ERRNO },
  62.     [SYS_IPC_WAIT] = { "ipc_wait_for_call",     3,  V_HASH },
  63.     [SYS_IPC_HANGUP] = { "ipc_hangup",          1,  V_ERRNO },
  64.     [SYS_IPC_REGISTER_IRQ] = { "ipc_register_irq",  4,  V_ERRNO },
  65.     [SYS_IPC_UNREGISTER_IRQ] = { "ipc_unregister_irq",  2,  V_ERRNO },
  66.  
  67.     [SYS_CAP_GRANT] = { "cap_grant",            2,  V_ERRNO },
  68.     [SYS_CAP_REVOKE] = { "cap_revoke",          2,  V_ERRNO },
  69.     [SYS_PHYSMEM_MAP] = { "physmem_map",        4,  V_ERRNO },
  70.     [SYS_IOSPACE_ENABLE] = { "iospace_enable",      1,  V_ERRNO },
  71.     [SYS_PREEMPT_CONTROL] = { "preempt_control",    1,  V_ERRNO },
  72.  
  73.     [SYS_SYSINFO_VALID] = { "sysinfo_valid",        2,  V_HASH },
  74.     [SYS_SYSINFO_VALUE] = { "sysinfo_value",        2,  V_HASH },
  75.     [SYS_DEBUG_ENABLE_CONSOLE] = { "debug_enable_console", 0,   V_ERRNO },
  76.     [SYS_IPC_CONNECT_KBOX] = { "ipc_connect_kbox",  1,  V_ERRNO }
  77. };
  78.  
  79. /** @}
  80.  */
  81.