Changeset 0722869 in mainline for kernel/generic/src/ipc/sysipc.c
- Timestamp:
- 2017-12-09T18:21:29Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- bd253241
- Parents:
- 071a1ddb (diff), 0016674 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2017-12-09 18:21:29)
- git-committer:
- GitHub <noreply@…> (2017-12-09 18:21:29)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/ipc/sysipc.c
r071a1ddb r0722869 897 897 } 898 898 899 #ifdef __32_BITS__ 900 901 /** Syscall connect to a task by ID (32 bits) 902 * 903 * @return Phone id on success, or negative error code. 904 * 905 */ 906 sysarg_t sys_ipc_connect_kbox(sysarg64_t *uspace_taskid) 899 /** Syscall connect to a task by ID 900 * 901 * @return Error code. 902 * 903 */ 904 sysarg_t sys_ipc_connect_kbox(task_id_t *uspace_taskid, cap_handle_t *uspace_phone) 907 905 { 908 906 #ifdef CONFIG_UDEBUG 909 sysarg64_t taskid; 910 int rc = copy_from_uspace(&taskid, uspace_taskid, sizeof(sysarg64_t)); 911 if (rc != 0) 912 return (sysarg_t) rc; 913 914 return ipc_connect_kbox((task_id_t) taskid); 907 task_id_t taskid; 908 cap_handle_t phone; 909 910 int rc = copy_from_uspace(&taskid, uspace_taskid, sizeof(task_id_t)); 911 if (rc == EOK) { 912 rc = ipc_connect_kbox((task_id_t) taskid, &phone); 913 } 914 915 if (rc == EOK) { 916 rc = copy_to_uspace(uspace_phone, &phone, sizeof(cap_handle_t)); 917 if (rc != EOK) { 918 // Clean up the phone on failure. 919 sys_ipc_hangup(phone); 920 } 921 } 922 923 return (sysarg_t) rc; 915 924 #else 916 925 return (sysarg_t) ENOTSUP; … … 918 927 } 919 928 920 #endif /* __32_BITS__ */921 922 #ifdef __64_BITS__923 924 /** Syscall connect to a task by ID (64 bits)925 *926 * @return Phone id on success, or negative error code.927 *928 */929 sysarg_t sys_ipc_connect_kbox(sysarg_t taskid)930 {931 #ifdef CONFIG_UDEBUG932 return ipc_connect_kbox((task_id_t) taskid);933 #else934 return (sysarg_t) ENOTSUP;935 #endif936 }937 938 #endif /* __64_BITS__ */939 940 929 /** @} 941 930 */
Note:
See TracChangeset
for help on using the changeset viewer.