Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/proc/task.c

    r577f042a rdf58e44  
    342342sysarg_t sys_task_set_name(const char *uspace_name, size_t name_len)
    343343{
     344        int rc;
    344345        char namebuf[TASK_NAME_BUFLEN];
    345346       
    346347        /* Cap length of name and copy it from userspace. */
     348       
    347349        if (name_len > TASK_NAME_BUFLEN - 1)
    348350                name_len = TASK_NAME_BUFLEN - 1;
    349351       
    350         int rc = copy_from_uspace(namebuf, uspace_name, name_len);
     352        rc = copy_from_uspace(namebuf, uspace_name, name_len);
    351353        if (rc != 0)
    352354                return (sysarg_t) rc;
    353355       
    354356        namebuf[name_len] = '\0';
    355        
    356         /*
    357          * As the task name is referenced also from the
    358          * threads, lock the threads' lock for the course
    359          * of the update.
    360          */
    361        
    362         irq_spinlock_lock(&tasks_lock, true);
    363         irq_spinlock_lock(&TASK->lock, false);
    364         irq_spinlock_lock(&threads_lock, false);
    365        
    366         /* Set task name */
    367357        str_cpy(TASK->name, TASK_NAME_BUFLEN, namebuf);
    368        
    369         irq_spinlock_unlock(&threads_lock, false);
    370         irq_spinlock_unlock(&TASK->lock, false);
    371         irq_spinlock_unlock(&tasks_lock, true);
    372358       
    373359        return EOK;
Note: See TracChangeset for help on using the changeset viewer.