Changeset 5a5269d in mainline for kernel/generic/src/ipc
- Timestamp:
- 2019-07-02T12:03:55Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 98c4c16
- Parents:
- aca97582
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-07-02 12:03:55)
- git-committer:
- GitHub <noreply@…> (2019-07-02 12:03:55)
- Location:
- kernel/generic/src/ipc
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/ipc/irq.c
raca97582 r5a5269d 223 223 * 224 224 */ 225 static irq_code_t *code_from_uspace( irq_code_t *ucode)225 static irq_code_t *code_from_uspace(uspace_ptr_irq_code_t ucode) 226 226 { 227 227 irq_pio_range_t *ranges = NULL; … … 242 242 if (!ranges) 243 243 goto error; 244 rc = copy_from_uspace(ranges, code->ranges,244 rc = copy_from_uspace(ranges, (uintptr_t) code->ranges, 245 245 sizeof(code->ranges[0]) * code->rangecount); 246 246 if (rc != EOK) … … 250 250 if (!cmds) 251 251 goto error; 252 rc = copy_from_uspace(cmds, code->cmds,252 rc = copy_from_uspace(cmds, (uintptr_t) code->cmds, 253 253 sizeof(code->cmds[0]) * code->cmdcount); 254 254 if (rc != EOK) … … 323 323 */ 324 324 errno_t ipc_irq_subscribe(answerbox_t *box, inr_t inr, sysarg_t imethod, 325 irq_code_t *ucode, cap_irq_handle_t *uspace_handle)325 uspace_ptr_irq_code_t ucode, uspace_ptr_cap_irq_handle_t uspace_handle) 326 326 { 327 327 if ((inr < 0) || (inr > last_inr)) -
kernel/generic/src/ipc/ops/dataread.c
raca97582 r5a5269d 63 63 if (!ipc_get_retval(&answer->data)) { 64 64 /* The recipient agreed to send data. */ 65 u intptr_t src = ipc_get_arg1(&answer->data);66 u intptr_t dst = ipc_get_arg1(olddata);65 uspace_addr_t src = ipc_get_arg1(&answer->data); 66 uspace_addr_t dst = ipc_get_arg1(olddata); 67 67 size_t max_size = ipc_get_arg2(olddata); 68 68 size_t size = ipc_get_arg2(&answer->data); … … 81 81 } 82 82 errno_t rc = copy_from_uspace(answer->buffer, 83 (void *)src, size);83 src, size); 84 84 if (rc) { 85 85 ipc_set_retval(&answer->data, rc); … … 103 103 { 104 104 if (answer->buffer) { 105 u intptr_t dst = ipc_get_arg1(&answer->data);105 uspace_addr_t dst = ipc_get_arg1(&answer->data); 106 106 size_t size = ipc_get_arg2(&answer->data); 107 107 errno_t rc; 108 108 109 rc = copy_to_uspace( (void *)dst, answer->buffer, size);109 rc = copy_to_uspace(dst, answer->buffer, size); 110 110 if (rc) 111 111 ipc_set_retval(&answer->data, rc); -
kernel/generic/src/ipc/ops/datawrite.c
raca97582 r5a5269d 43 43 static errno_t request_preprocess(call_t *call, phone_t *phone) 44 44 { 45 u intptr_t src = ipc_get_arg1(&call->data);45 uspace_addr_t src = ipc_get_arg1(&call->data); 46 46 size_t size = ipc_get_arg2(&call->data); 47 47 … … 59 59 if (!call->buffer) 60 60 return ENOMEM; 61 errno_t rc = copy_from_uspace(call->buffer, (void *)src, size);61 errno_t rc = copy_from_uspace(call->buffer, src, size); 62 62 if (rc != EOK) { 63 63 /* … … 77 77 if (!ipc_get_retval(&answer->data)) { 78 78 /* The recipient agreed to receive data. */ 79 u intptr_t dst = (uintptr_t)ipc_get_arg1(&answer->data);80 size_t size = (size_t)ipc_get_arg2(&answer->data);81 size_t max_size = (size_t)ipc_get_arg2(olddata);79 uspace_addr_t dst = ipc_get_arg1(&answer->data); 80 size_t size = ipc_get_arg2(&answer->data); 81 size_t max_size = ipc_get_arg2(olddata); 82 82 83 83 if (size <= max_size) { 84 errno_t rc = copy_to_uspace( (void *)dst,84 errno_t rc = copy_to_uspace(dst, 85 85 answer->buffer, size); 86 86 if (rc) -
kernel/generic/src/ipc/ops/debug.c
raca97582 r5a5269d 47 47 { 48 48 if (answer->buffer) { 49 u intptr_t dst = ipc_get_arg1(&answer->data);49 uspace_addr_t dst = ipc_get_arg1(&answer->data); 50 50 size_t size = ipc_get_arg2(&answer->data); 51 51 errno_t rc; 52 52 53 rc = copy_to_uspace( (void *)dst, answer->buffer, size);53 rc = copy_to_uspace(dst, answer->buffer, size); 54 54 if (rc) 55 55 ipc_set_retval(&answer->data, rc); -
kernel/generic/src/ipc/ops/shareout.c
raca97582 r5a5269d 70 70 71 71 if (rc == EOK) { 72 rc = copy_to_uspace( (void *)ipc_get_arg2(&answer->data),72 rc = copy_to_uspace(ipc_get_arg2(&answer->data), 73 73 &dst_base, sizeof(dst_base)); 74 74 } -
kernel/generic/src/ipc/sysipc.c
raca97582 r5a5269d 419 419 * 420 420 */ 421 sys_errno_t sys_ipc_call_async_slow(cap_phone_handle_t handle, ipc_data_t *data,421 sys_errno_t sys_ipc_call_async_slow(cap_phone_handle_t handle, uspace_ptr_ipc_data_t data, 422 422 sysarg_t label) 423 423 { … … 437 437 } 438 438 439 errno_t rc = copy_from_uspace(&call->data.args, &data->args,439 errno_t rc = copy_from_uspace(&call->data.args, data + offsetof(ipc_data_t, args), 440 440 sizeof(call->data.args)); 441 441 if (rc != EOK) { … … 623 623 */ 624 624 sys_errno_t sys_ipc_forward_slow(cap_call_handle_t chandle, 625 cap_phone_handle_t phandle, ipc_data_t *data, unsigned int mode)625 cap_phone_handle_t phandle, uspace_ptr_ipc_data_t data, unsigned int mode) 626 626 { 627 627 ipc_data_t newdata; 628 errno_t rc = copy_from_uspace(&newdata.args, &data->args,628 errno_t rc = copy_from_uspace(&newdata.args, data + offsetof(ipc_data_t, args), 629 629 sizeof(newdata.args)); 630 630 if (rc != EOK) … … 700 700 * 701 701 */ 702 sys_errno_t sys_ipc_answer_slow(cap_call_handle_t chandle, ipc_data_t *data)702 sys_errno_t sys_ipc_answer_slow(cap_call_handle_t chandle, uspace_ptr_ipc_data_t data) 703 703 { 704 704 kobject_t *kobj = cap_unpublish(TASK, chandle, KOBJECT_TYPE_CALL); … … 718 718 saved = false; 719 719 720 errno_t rc = copy_from_uspace(&call->data.args, &data->args,720 errno_t rc = copy_from_uspace(&call->data.args, data + offsetof(ipc_data_t, args), 721 721 sizeof(call->data.args)); 722 722 if (rc != EOK) { … … 766 766 * @return An error code on error. 767 767 */ 768 sys_errno_t sys_ipc_wait_for_call( ipc_data_t *calldata, uint32_t usec,768 sys_errno_t sys_ipc_wait_for_call(uspace_ptr_ipc_data_t calldata, uint32_t usec, 769 769 unsigned int flags) 770 770 { … … 888 888 */ 889 889 sys_errno_t sys_ipc_irq_subscribe(inr_t inr, sysarg_t imethod, 890 irq_code_t *ucode, cap_irq_handle_t *uspace_handle)890 uspace_ptr_irq_code_t ucode, uspace_ptr_cap_irq_handle_t uspace_handle) 891 891 { 892 892 if (!(perm_get(TASK) & PERM_IRQ_REG)) … … 918 918 * 919 919 */ 920 sys_errno_t sys_ipc_connect_kbox( task_id_t *uspace_taskid,921 cap_phone_handle_t *uspace_phone)920 sys_errno_t sys_ipc_connect_kbox(uspace_ptr_task_id_t uspace_taskid, 921 uspace_ptr_cap_phone_handle_t uspace_phone) 922 922 { 923 923 #ifdef CONFIG_UDEBUG
Note:
See TracChangeset
for help on using the changeset viewer.