Rev |
Age |
Author |
Path |
Log message |
Diff |
4635 |
5647 d 16 h |
jermar |
/trunk/ |
Things are much easier when the compiler knows that context_save() returns twice. |
|
4633 |
5648 d 9 h |
jermar |
/trunk/uspace/lib/libc/generic/ |
In fibril_switch(), make sure to reload srcf with the current fibril address
in the post-context_restore() code. Its value may be invalid after
contex_restore() due to e.g. register recycling. |
|
4528 |
5676 d 12 h |
svoboda |
/trunk/uspace/ |
Use 'fibril_local' modifier for fibril-local variables instead of '__thread'. Since it is decalred in fibril.h, it need not begin with '__'. |
|
4522 |
5678 d 12 h |
decky |
/trunk/uspace/lib/libc/ |
remove obsolete comment
cstyle |
|
4513 |
5680 d 12 h |
jermar |
/trunk/uspace/lib/libc/generic/ |
Nit. |
|
4510 |
5680 d 13 h |
jermar |
/trunk/uspace/lib/libc/generic/ |
A little bit of cleanup and a remedy for great confusion introduced in revision 2483. |
|
4509 |
5680 d 18 h |
decky |
/trunk/uspace/ |
rename libadt -> adt |
|
3049 |
6050 d 19 h |
decky |
/trunk/uspace/lib/libc/generic/ |
empty line remove |
|
2586 |
6267 d 9 h |
jermar |
/trunk/uspace/lib/libc/ |
Unify implementations of TLS variant I and variant II __alloc_tls() and
__free_tls_arch(). |
|
2568 |
6295 d 1 h |
jermar |
/trunk/uspace/ |
Rename fibril_schedule_next_adv() to fibril_switch(). Rename
fibril_schedule_next() to fibril_yield(). Some fibril structures could be
uninitialized, set them to zero in fibril_setup(). For some fibrils, the stack
member can be NULL (e.g. every thread's first/main fibril); don't do free on
these stacks when cleaning up after a dead fibril. |
|
2492 |
6383 d 14 h |
jermar |
/trunk/uspace/lib/libc/generic/ |
Add comment clarifying how a fibril waiting for a message gets rescheduled. |
|
2483 |
6391 d 16 h |
jermar |
/trunk/uspace/lib/libc/ |
Remove fibril_join().
We cannot guarantee our assumptions that easily.
This broken feature is removed instead of fixing because there are now users of it. |
|
2482 |
6392 d 7 h |
jermar |
/trunk/ |
Goodbye pseudo threads, welcome fibrils.
The renaming might still be incomplete. |
|
2481 |
6392 d 8 h |
jermar |
/trunk/uspace/lib/libc/ |
1. Implement simple joining of pseudo threads. Only one pseudo thread is allowed to join another pseudo
thread. The restriction is that both pseudo threads must be from the same thread (this is to simplify
synchronization). The joiner doesn't free anything from the joinee. It only gets its return value. Not
tested thoroughly yet.
2. Cleanup of a dead pseudo thread is done by the next scheduled pseudo thread. Not tested thoroughly yet. |
|
2479 |
6396 d 18 h |
jermar |
/trunk/ |
New, better-structured, directory layout for uspace. |
|
2071 |
6553 d 11 h |
jermar |
/trunk/ |
(c) versus (C) |
|
1868 |
6687 d 17 h |
jermar |
/trunk/ |
sparc64 work.
- the syscall wrapper needs to use the "memory"
clobber specifier to prevent over-optimization.
- on sparc64, the user address space spans the whole
64-bit space and therefore the macro
USER_ADDRESS_SPACE_SIZE_ARCH, as it was defined,
overflows to 0
- stop using USER_ADDRESS_SPACE_SIZE_ARCH and define
MAX_HEAP_SIZE instead
- in our situation when kernel and user address spaces
are separate, the G (global) bit cannot be used
(there is no point in it anymore)
- add the DEBUG() macro to stdio.h; DEBUG() uses
SYS_IO and is a good debugging tool for getting
early userspace to work |
|
1866 |
6688 d 11 h |
jermar |
/trunk/uspace/ |
Indentation and formatting facelift for libc.
Libc headers now have C99 compliant guards. |
|
1787 |
6743 d 13 h |
decky |
/ |
move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot |
|
1781 |
6750 d 14 h |
jermar |
/uspace/trunk/ |
Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.). |
|