- Timestamp:
- 2012-08-12T09:03:30Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- b08e7970
- Parents:
- bd29f9c9 (diff), 371cb6c (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- uspace
- Files:
-
- 18 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/arch/abs32le/_link.ld.in
rbd29f9c9 r542e819 22 22 . = 0x1000 + SIZEOF_HEADERS; 23 23 #endif 24 25 /* Make sure the code is aligned reasonably */ 26 . = ALIGN(., 16); 24 27 25 28 .text : { -
uspace/lib/c/arch/amd64/_link.ld.in
rbd29f9c9 r542e819 23 23 . = 0x1000 + SIZEOF_HEADERS; 24 24 #endif 25 26 /* Make sure the code is aligned reasonably */ 27 . = ALIGN(., 16); 25 28 26 29 .init : { -
uspace/lib/c/arch/amd64/include/elf_linux.h
rbd29f9c9 r542e819 66 66 uint64_t rsp; 67 67 uint64_t ss; 68 69 /* 70 * The following registers need to be part of elf_regs_t. 71 * Unfortunately, we don't have any information about them in our 72 * istate_t. 73 */ 74 uint64_t unused_fs_base; 75 uint64_t unused_gs_base; 76 uint64_t unused_ds; 77 uint64_t unused_es; 78 uint64_t unused_fs; 79 uint64_t unused_gs; 68 80 } elf_regs_t; 69 81 … … 91 103 elf_regs->rsp = istate->rsp; 92 104 elf_regs->ss = istate->ss; 105 106 /* 107 * Reset the registers for which there is not enough info in istate_t. 108 */ 109 elf_regs->unused_fs_base = 0; 110 elf_regs->unused_gs_base = 0; 111 elf_regs->unused_ds = 0; 112 elf_regs->unused_es = 0; 113 elf_regs->unused_fs = 0; 114 elf_regs->unused_gs = 0; 93 115 } 94 116 -
uspace/lib/c/arch/arm32/_link.ld.in
rbd29f9c9 r542e819 22 22 . = 0x1000 + SIZEOF_HEADERS; 23 23 #endif 24 25 /* Make sure the code is aligned reasonably */ 26 . = ALIGN(., 8); 24 27 25 28 .init : { -
uspace/lib/c/arch/arm32/src/fibril.S
rbd29f9c9 r542e819 35 35 stmia r0!, {sp, lr} 36 36 stmia r0!, {r4-r11} 37 37 38 38 # return 1 39 39 mov r0, #1 … … 43 43 ldmia r0!, {sp, lr} 44 44 ldmia r0!, {r4-r11} 45 46 # return 045 46 # return 0 47 47 mov r0, #0 48 48 mov pc, lr -
uspace/lib/c/arch/arm32/src/stacktrace_asm.S
rbd29f9c9 r542e819 41 41 42 42 stacktrace_pc_get: 43 mov r0, lr 43 mov r0, lr 44 44 mov pc, lr -
uspace/lib/c/arch/arm32/src/thread_entry.s
rbd29f9c9 r542e819 42 42 push {fp, ip, lr, pc} 43 43 sub fp, ip, #4 44 45 44 45 b __thread_main -
uspace/lib/c/arch/ia32/_link.ld.in
rbd29f9c9 r542e819 31 31 #endif 32 32 33 /* Make sure the code is aligned reasonably */ 34 . = ALIGN(., 16); 35 33 36 .init : { 34 37 *(.init); … … 39 42 *(.rodata .rodata.*); 40 43 } :text 41 44 42 45 #if defined(SHLIB) || defined(DLEXE) 43 46 .rel.plt : { … … 82 85 #if defined(SHLIB) || defined(DLEXE) 83 86 .data.rel : { 84 87 *(.data.rel .data.rel.*); 85 88 } :data 86 89 87 90 .got : { 88 91 *(.got); 89 92 } :data 93 90 94 .got.plt : { 91 95 *(.got.plt); 92 96 } :data 93 97 #endif -
uspace/lib/c/arch/ia64/_link.ld.in
rbd29f9c9 r542e819 23 23 #endif 24 24 25 /* 26 * XXX This is just a work around. Problem: .init section does not 27 * have the proper alignment. 28 */ 25 /* Make sure the code is aligned reasonably */ 29 26 . = ALIGN(., 16); 30 27 -
uspace/lib/c/arch/mips32/Makefile.common
rbd29f9c9 r542e819 27 27 # 28 28 29 GCC_CFLAGS += -m ips3 -mabi=3229 GCC_CFLAGS += -msoft-float -mips3 -mabi=32 30 30 31 31 ENDIANESS = LE -
uspace/lib/c/arch/mips32/_link.ld.in
rbd29f9c9 r542e819 22 22 . = 0x4000 + SIZEOF_HEADERS; 23 23 #endif 24 25 /* Make sure the code is aligned reasonably */ 26 . = ALIGN(., 16); 24 27 25 28 .init : { -
uspace/lib/c/arch/mips32eb/Makefile.common
rbd29f9c9 r542e819 27 27 # 28 28 29 GCC_CFLAGS += -m ips3 -mabi=3229 GCC_CFLAGS += -msoft-float -mips3 -mabi=32 30 30 31 31 ENDIANESS = BE -
uspace/lib/c/arch/mips64/Makefile.common
rbd29f9c9 r542e819 27 27 # 28 28 29 GCC_CFLAGS += -m ips3 -mabi=6429 GCC_CFLAGS += -msoft-float -mips3 -mabi=64 30 30 AFLAGS = -64 31 31 -
uspace/lib/c/arch/mips64/_link.ld.in
rbd29f9c9 r542e819 23 23 . = 0x4000 + SIZEOF_HEADERS; 24 24 #endif 25 26 /* Make sure the code is aligned reasonably */ 27 . = ALIGN(., 16); 25 28 26 29 .init : { -
uspace/lib/c/arch/ppc32/_link.ld.in
rbd29f9c9 r542e819 23 23 . = 0x1000 + SIZEOF_HEADERS; 24 24 #endif 25 26 /* Make sure the code is aligned reasonably */ 27 . = ALIGN(., 4); 25 28 26 29 .init : { -
uspace/lib/c/arch/sparc64/_link.ld.in
rbd29f9c9 r542e819 22 22 . = 0x4000 + SIZEOF_HEADERS; 23 23 #endif 24 25 /* Make sure the code is aligned reasonably */ 26 . = ALIGN(., 16); 24 27 25 28 .init : { -
uspace/lib/c/generic/str.c
rbd29f9c9 r542e819 431 431 * and both strings consist of the same sequence of characters. 432 432 * 433 * A string is smaller than another string iff it is shorter or 434 * has a character with lower value at the first position where 435 * the strings differ. 433 * A string S1 is less than another string S2 if it has a character with 434 * lower value at the first character position where the strings differ. 435 * If the strings differ in length, the shorter one is treated as if 436 * padded by characters with a value of zero. 436 437 * 437 438 * @param s1 First string to compare. 438 439 * @param s2 Second string to compare. 439 440 * 440 * @return 0 if the strings are equal, -1 if first is smaller,441 * 1 if second smaller.441 * @return 0 if the strings are equal, -1 if the first is less than the second, 442 * 1 if the second is less than the first. 442 443 * 443 444 */ … … 475 476 * up to max_len characters. 476 477 * 477 * A string is smaller than another string iff it is shorter or 478 * has a character with lower value at the first position where 479 * the strings differ, considering only first max_len characters. 478 * A string S1 is less than another string S2 if it has a character with 479 * lower value at the first character position where the strings differ. 480 * If the strings differ in length, the shorter one is treated as if 481 * padded by characters with a value of zero. Only the first max_len 482 * characters are considered. 480 483 * 481 484 * @param s1 First string to compare. … … 483 486 * @param max_len Maximum number of characters to consider. 484 487 * 485 * @return 0 if the strings are equal, -1 if first is smaller,486 * 1 if second smaller.488 * @return 0 if the strings are equal, -1 if the first is less than the second, 489 * 1 if the second is less than the first. 487 490 * 488 491 */ -
uspace/srv/net/tcp/sock.c
rbd29f9c9 r542e819 779 779 } 780 780 781 /* Grab recv_buffer_lock because of CV wait in tcp_sock_recv_fibril() */ 782 fibril_mutex_lock(&socket->recv_buffer_lock); 783 socket->sock_core = NULL; 784 fibril_mutex_unlock(&socket->recv_buffer_lock); 785 781 786 rc = socket_destroy(NULL, socket_id, &client->sockets, &gsock, 782 787 tcp_free_sock_data); … … 839 844 log_msg(LVL_DEBUG, "tcp_sock_recv_fibril()"); 840 845 846 fibril_mutex_lock(&sock->recv_buffer_lock); 847 841 848 while (true) { 842 849 log_msg(LVL_DEBUG, "call tcp_uc_receive()"); 843 fibril_mutex_lock(&sock->recv_buffer_lock); 844 while (sock->recv_buffer_used != 0) 850 while (sock->recv_buffer_used != 0 && sock->sock_core != NULL) 845 851 fibril_condvar_wait(&sock->recv_buffer_cv, 846 852 &sock->recv_buffer_lock); … … 852 858 sock->recv_error = trc; 853 859 fibril_condvar_broadcast(&sock->recv_buffer_cv); 854 fibril_mutex_unlock(&sock->recv_buffer_lock);855 tcp_sock_notify_data(sock->sock_core);860 if (sock->sock_core != NULL) 861 tcp_sock_notify_data(sock->sock_core); 856 862 break; 857 863 } … … 861 867 sock->recv_buffer_used = data_len; 862 868 fibril_condvar_broadcast(&sock->recv_buffer_cv); 863 fibril_mutex_unlock(&sock->recv_buffer_lock); 864 tcp_sock_notify_data(sock->sock_core); 865 } 869 if (sock->sock_core != NULL) 870 tcp_sock_notify_data(sock->sock_core); 871 } 872 873 fibril_mutex_unlock(&sock->recv_buffer_lock); 866 874 867 875 tcp_uc_delete(sock->conn);
Note:
See TracChangeset
for help on using the changeset viewer.