Changeset de33dab in mainline for uspace/libc/generic/io/vprintf.c


Ignore:
Timestamp:
2007-04-09T13:53:57Z (18 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
183788f1
Parents:
d0b1443
Message:

Revert some of the changes introduced in revision 2209.
I think it is not correct to remove serialization of pseudo threads in printf_core.c.
With thread-level futex serialization, several pseudo threads running in one thread could easily deadlock
the task.

Add a dedicated futex serialization to thread1.c test only.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/libc/generic/io/vprintf.c

    rd0b1443 rde33dab  
    3737#include <unistd.h>
    3838#include <io/printf_core.h>
    39 #include <futex.h>
    40 
    41 atomic_t printf_futex = FUTEX_INITIALIZER;
    4239
    4340static int vprintf_write(const char *str, size_t count, void *unused)
     
    5552        struct printf_spec ps = {(int(*)(void *, size_t, void *)) vprintf_write, NULL};
    5653       
    57         futex_down(&printf_futex);
    5854        int ret = printf_core(fmt, &ps, ap);
    59         futex_up(&printf_futex);
    6055       
    6156        return ret;
Note: See TracChangeset for help on using the changeset viewer.