Changeset b7fd2a0 in mainline for kernel/generic/include/proc


Ignore:
Timestamp:
2018-01-13T03:10:29Z (7 years ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
a53ed3a
Parents:
36f0738
Message:

Use errno_t in all uspace and kernel code.

Change type of every variable, parameter and return value that holds an
<errno.h> constant to either errno_t (the usual case), or sys_errno_t
(some places in kernel). This is for the purpose of self-documentation,
as well as for type-checking with a bit of type definition hackery.

Although this is a massive commit, it is a simple text replacement, and thus
is very easy to verify. Simply do the following:

`
git checkout <this commit's hash>
git reset HEAD
git add .
tools/srepl '\berrno_t\b' int
git add .
tools/srepl '\bsys_errno_t\b' sysarg_t
git reset
git diff
`

While this doesn't ensure that the replacements are correct, it does ensure
that the commit doesn't do anything except those replacements. Since errno_t
is typedef'd to int in the usual case (and sys_errno_t to sysarg_t), even if
incorrect, this commit cannot change behavior.

Location:
kernel/generic/include/proc
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/proc/program.h

    r36f0738 rb7fd2a0  
    5555extern void *program_loader;
    5656
    57 extern int program_create(as_t *, uintptr_t, char *, program_t *);
    58 extern int program_create_from_image(void *, char *, program_t *);
    59 extern int program_create_loader(program_t *, char *);
     57extern errno_t program_create(as_t *, uintptr_t, char *, program_t *);
     58extern errno_t program_create_from_image(void *, char *, program_t *);
     59extern errno_t program_create_loader(program_t *, char *);
    6060extern void program_ready(program_t *);
    6161
    62 extern sysarg_t sys_program_spawn_loader(char *, size_t);
     62extern sys_errno_t sys_program_spawn_loader(char *, size_t);
    6363
    6464#endif
  • kernel/generic/include/proc/task.h

    r36f0738 rb7fd2a0  
    157157extern void task_release(task_t *);
    158158extern task_t *task_find_by_id(task_id_t);
    159 extern int task_kill(task_id_t);
     159extern errno_t task_kill(task_id_t);
    160160extern void task_kill_self(bool) __attribute__((noreturn));
    161161extern void task_get_accounting(task_t *, uint64_t *, uint64_t *);
     
    174174
    175175#ifdef __32_BITS__
    176 extern sysarg_t sys_task_get_id(sysarg64_t *);
     176extern sys_errno_t sys_task_get_id(sysarg64_t *);
    177177#endif
    178178
     
    181181#endif
    182182
    183 extern sysarg_t sys_task_set_name(const char *, size_t);
    184 extern sysarg_t sys_task_kill(task_id_t *);
    185 extern sysarg_t sys_task_exit(sysarg_t);
     183extern sys_errno_t sys_task_set_name(const char *, size_t);
     184extern sys_errno_t sys_task_kill(task_id_t *);
     185extern sys_errno_t sys_task_exit(sysarg_t);
    186186
    187187#endif
  • kernel/generic/include/proc/thread.h

    r36f0738 rb7fd2a0  
    256256        thread_join_timeout((t), SYNCH_NO_TIMEOUT, SYNCH_FLAGS_NONE)
    257257
    258 extern int thread_join_timeout(thread_t *, uint32_t, unsigned int);
     258extern errno_t thread_join_timeout(thread_t *, uint32_t, unsigned int);
    259259extern void thread_detach(thread_t *);
    260260
     
    276276
    277277/* Thread syscall prototypes. */
    278 extern sysarg_t sys_thread_create(uspace_arg_t *, char *, size_t,
     278extern sys_errno_t sys_thread_create(uspace_arg_t *, char *, size_t,
    279279    thread_id_t *);
    280 extern sysarg_t sys_thread_exit(int);
    281 extern sysarg_t sys_thread_get_id(thread_id_t *);
    282 extern sysarg_t sys_thread_usleep(uint32_t);
    283 extern sysarg_t sys_thread_udelay(uint32_t);
     280extern sys_errno_t sys_thread_exit(int);
     281extern sys_errno_t sys_thread_get_id(thread_id_t *);
     282extern sys_errno_t sys_thread_usleep(uint32_t);
     283extern sys_errno_t sys_thread_udelay(uint32_t);
    284284
    285285#endif
Note: See TracChangeset for help on using the changeset viewer.