Changeset de33dab in mainline for uspace/libc/generic/io/printf_core.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/printf_core.c

    rd0b1443 rde33dab  
    4141#include <ctype.h>
    4242#include <string.h>
     43#include <async.h>      /* for pseudo thread serialization */
    4344
    4445#define __PRINTF_FLAG_PREFIX            0x00000001      /**< show prefixes 0x or 0*/
     
    443444        int width, precision;
    444445        uint64_t flags;
     446       
     447        /* Don't let other pseudo threads interfere. */
     448        async_serialize_start();
    445449       
    446450        counter = 0;
     
    675679        }
    676680       
     681        async_serialize_end();
    677682        return counter;
    678683minus_out:
     684        async_serialize_end();
    679685        return -counter;
    680686}
Note: See TracChangeset for help on using the changeset viewer.