Changeset 542e819 in mainline


Ignore:
Timestamp:
2012-08-12T09:03:30Z (12 years ago)
Author:
Martin Decky <martin@…>
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.
Message:

merge mainline changes

Files:
32 edited

Legend:

Unmodified
Added
Removed
  • boot/arch/mips32/Makefile.inc

    rbd29f9c9 r542e819  
    2929BFD_ARCH = mips
    3030BITS = 32
    31 EXTRA_CFLAGS = -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 -mabi=32
     31EXTRA_CFLAGS = -msoft-float -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 -mabi=32
    3232
    3333RD_SRVS_NON_ESSENTIAL += \
     
    4848        BFD_OUTPUT = binary
    4949        ENDIANESS = LE
    50         EXTRA_GCC_CFLAGS = -mhard-float
    5150endif
    5251
  • boot/arch/mips64/Makefile.inc

    rbd29f9c9 r542e819  
    2929BFD_ARCH = mips:4000
    3030BITS = 64
    31 EXTRA_CFLAGS = -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 -mabi=64
     31EXTRA_CFLAGS = -msoft-float -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 -mabi=64
    3232
    3333ifeq ($(MACHINE),msim)
     
    3535        BFD_OUTPUT = binary
    3636        ENDIANESS = LE
    37         EXTRA_GCC_CFLAGS = -mhard-float
    3837endif
    3938
  • boot/generic/src/str.c

    rbd29f9c9 r542e819  
    357357 * and both strings consist of the same sequence of characters.
    358358 *
    359  * A string is smaller than another string iff it is shorter or
    360  * has a character with lower value at the first position where
    361  * the strings differ.
     359 * A string S1 is less than another string S2 if it has a character with
     360 * lower value at the first character position where the strings differ.
     361 * If the strings differ in length, the shorter one is treated as if
     362 * padded by characters with a value of zero.
    362363 *
    363364 * @param s1 First string to compare.
    364365 * @param s2 Second string to compare.
    365366 *
    366  * @return 0 if the strings are equal, -1 if first is smaller,
    367  *         1 if second smaller.
     367 * @return 0 if the strings are equal, -1 if the first is less than the second,
     368 *         1 if the second is less than the first.
    368369 *
    369370 */
  • contrib/arch/HelenOS.adl

    rbd29f9c9 r542e819  
    1 system architecture HelenOS version 0.4.1 {
     1system architecture HelenOS version 0.5.0 {
    22        /* SPARTAN kernel */
    33        inst kernel kernel;
  • contrib/bazaar/bzreml/__init__.py

    rbd29f9c9 r542e819  
    102102        return ""
    103103
     104def iter_reverse_revision_history(repository, revision_id):
     105        """Iterate backwards through revision ids in the lefthand history"""
     106       
     107        graph = repository.get_graph()
     108        stop_revisions = (None, _mod_revision.NULL_REVISION)
     109        return graph.iter_lefthand_ancestry(revision_id, stop_revisions)
     110
    104111def revision_sequence(branch, revision_old_id, revision_new_id):
    105112        """Calculate a sequence of revisions"""
    106113       
    107         for revision_ac_id in branch.repository.iter_reverse_revision_history(revision_new_id):
     114        for revision_ac_id in iter_reverse_revision_history(branch.repository, revision_new_id):
    108115                if (revision_ac_id == revision_old_id):
    109116                        break
  • contrib/bazaar/mbprotect/__init__.py

    rbd29f9c9 r542e819  
    4545from bzrlib.errors import TipChangeRejected
    4646
     47def iter_reverse_revision_history(repository, revision_id):
     48        """Iterate backwards through revision ids in the lefthand history"""
     49       
     50        graph = repository.get_graph()
     51        stop_revisions = (None, _mod_revision.NULL_REVISION)
     52        return graph.iter_lefthand_ancestry(revision_id, stop_revisions)
     53
    4754def pre_change_branch_tip(params):
    4855        repo = params.branch.repository
     
    5461        # First permitted case is appending changesets to main branch.Look for
    5562        # old tip in new main branch.
    56         for revision_id in repo.iter_reverse_revision_history(params.new_revid):
     63        for revision_id in iter_reverse_revision_history(repo, params.new_revid):
    5764                if revision_id == params.old_revid:
    5865                        return  # Found old tip
     
    6067        # Another permitted case is backing out changesets. Look for new tip
    6168        # in old branch.
    62         for revision_id in repo.iter_reverse_revision_history(params.old_revid):
     69        for revision_id in iter_reverse_revision_history(repo, params.old_revid):
    6370                if revision_id == params.new_revid:
    6471                        return  # Found new tip
  • contrib/conf/mips32-gx.sh

    rbd29f9c9 r542e819  
    88fi
    99
    10 gxemul $@ -E oldtestmips -C R4000 -X image.boot -d d0:"$DISK_IMG"
     10if [ "$1" == "-E" ] && [ -n "$2" ]; then
     11        MACHINE="$2"
     12        shift 2
     13else
     14        MACHINE="oldtestmips"
     15fi
     16
     17gxemul $@ -E "$MACHINE" -C R4000 -X image.boot -d d0:"$DISK_IMG"
  • defaults/mips32/Makefile.config

    rbd29f9c9 r542e819  
    4747CONFIG_MOUNT_DATA = n
    4848
     49# Barebone build with essential binaries only
     50CONFIG_BAREBONE = y
  • defaults/sparc64/ultra/Makefile.config

    rbd29f9c9 r542e819  
    44# CPU type
    55PROCESSOR = us
     6
     7# Barebone build with essential binaries only
     8CONFIG_BAREBONE = y
  • kernel/arch/mips32/Makefile.inc

    rbd29f9c9 r542e819  
    2929BFD_ARCH = mips
    3030BFD = binary
    31 GCC_CFLAGS += -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 -mabi=32
     31GCC_CFLAGS += -msoft-float -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 -mabi=32
    3232
    3333BITS = 32
     
    4848        BFD_NAME = elf32-tradlittlemips
    4949        ENDIANESS = LE
    50         GCC_CFLAGS += -mhard-float
    5150endif
    5251
  • kernel/arch/mips64/Makefile.inc

    rbd29f9c9 r542e819  
    2929BFD_ARCH = mips:4000
    3030BFD = binary
    31 GCC_CFLAGS += -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 -mabi=64
     31GCC_CFLAGS += -msoft-float -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 -mabi=64
    3232AFLAGS = -64
    3333
     
    4040        BFD_NAME = elf64-tradlittlemips
    4141        ENDIANESS = LE
    42         GCC_CFLAGS += -mhard-float
    4342endif
    4443
  • kernel/generic/src/lib/str.c

    rbd29f9c9 r542e819  
    459459 * and both strings consist of the same sequence of characters.
    460460 *
    461  * A string is smaller than another string iff it is shorter or
    462  * has a character with lower value at the first position where
    463  * the strings differ.
     461 * A string S1 is less than another string S2 if it has a character with
     462 * lower value at the first character position where the strings differ.
     463 * If the strings differ in length, the shorter one is treated as if
     464 * padded by characters with a value of zero.
    464465 *
    465466 * @param s1 First string to compare.
    466467 * @param s2 Second string to compare.
    467468 *
    468  * @return 0 if the strings are equal, -1 if first is smaller,
    469  *         1 if second smaller.
     469 * @return 0 if the strings are equal, -1 if the first is less than the second,
     470 *         1 if the second is less than the first.
    470471 *
    471472 */
     
    503504 * up to max_len characters.
    504505 *
    505  * A string is smaller than another string iff it is shorter or
    506  * has a character with lower value at the first position where
    507  * the strings differ, considering only first max_len characters.
     506 * A string S1 is less than another string S2 if it has a character with
     507 * lower value at the first character position where the strings differ.
     508 * If the strings differ in length, the shorter one is treated as if
     509 * padded by characters with a value of zero. Only the first max_len
     510 * characters are considered.
    508511 *
    509512 * @param s1      First string to compare.
     
    511514 * @param max_len Maximum number of characters to consider.
    512515 *
    513  * @return 0 if the strings are equal, -1 if first is smaller,
    514  *         1 if second smaller.
     516 * @return 0 if the strings are equal, -1 if the first is less than the second,
     517 *         1 if the second is less than the first.
    515518 *
    516519 */
  • release/Makefile

    rbd29f9c9 r542e819  
    3333
    3434PROFILES = amd64 arm32/GXemul arm32/integratorcp arm32/gta02 ia32 \
    35     ia64/i460GX ia64/ski mips32/GXemul mips32/msim sparc64/niagara \
     35    ia64/i460GX ia64/ski mips32/GXemul mips32/msim ppc32 \
    3636    sparc64/ultra
    3737
     
    7171release: src_rel
    7272        for profile in $(PROFILES); do \
    73                 $(MAKE) -C $(EXPORT_DIR) clean ; \
     73                $(MAKE) -C $(EXPORT_DIR) distclean ; \
    7474                $(MAKE) -C $(EXPORT_DIR) PROFILE=$$profile ; \
    7575                $(MAKE) PROFILE=$$profile releasefile ; \
     
    7979        rm -rf $(EXPORT_DIR)
    8080        mkdir -p $(EXPORT_DIR)
    81         $(BZR) export $(EXPORT_DIR)
     81        $(BZR) export $(EXPORT_DIR) ../
    8282
    8383src_rel $(SRC_ARCHIVE): export
  • uspace/lib/c/arch/abs32le/_link.ld.in

    rbd29f9c9 r542e819  
    2222        . = 0x1000 + SIZEOF_HEADERS;
    2323#endif
     24       
     25        /* Make sure the code is aligned reasonably */
     26        . = ALIGN(., 16);
    2427       
    2528        .text : {
  • uspace/lib/c/arch/amd64/_link.ld.in

    rbd29f9c9 r542e819  
    2323        . = 0x1000 + SIZEOF_HEADERS;
    2424#endif
     25       
     26        /* Make sure the code is aligned reasonably */
     27        . = ALIGN(., 16);
    2528       
    2629        .init : {
  • uspace/lib/c/arch/amd64/include/elf_linux.h

    rbd29f9c9 r542e819  
    6666        uint64_t rsp;
    6767        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;
    6880} elf_regs_t;
    6981
     
    91103        elf_regs->rsp = istate->rsp;
    92104        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;
    93115}
    94116
  • uspace/lib/c/arch/arm32/_link.ld.in

    rbd29f9c9 r542e819  
    2222        . = 0x1000 + SIZEOF_HEADERS;
    2323#endif
     24       
     25        /* Make sure the code is aligned reasonably */
     26        . = ALIGN(., 8);
    2427       
    2528        .init : {
  • uspace/lib/c/arch/arm32/src/fibril.S

    rbd29f9c9 r542e819  
    3535        stmia r0!, {sp, lr}
    3636        stmia r0!, {r4-r11}
    37 
     37       
    3838        # return 1
    3939        mov r0, #1
     
    4343        ldmia r0!, {sp, lr}
    4444        ldmia r0!, {r4-r11}
    45 
    46         #return 0
     45       
     46        # return 0
    4747        mov r0, #0
    4848        mov pc, lr
  • uspace/lib/c/arch/arm32/src/stacktrace_asm.S

    rbd29f9c9 r542e819  
    4141
    4242stacktrace_pc_get:
    43         mov r0, lr 
     43        mov r0, lr
    4444        mov pc, lr
  • uspace/lib/c/arch/arm32/src/thread_entry.s

    rbd29f9c9 r542e819  
    4242        push {fp, ip, lr, pc}
    4343        sub fp, ip, #4
    44 
    45         b __thread_main
     44       
     45        b __thread_main
  • uspace/lib/c/arch/ia32/_link.ld.in

    rbd29f9c9 r542e819  
    3131#endif
    3232       
     33        /* Make sure the code is aligned reasonably */
     34        . = ALIGN(., 16);
     35       
    3336        .init : {
    3437                *(.init);
     
    3942                *(.rodata .rodata.*);
    4043        } :text
    41 
     44       
    4245#if defined(SHLIB) || defined(DLEXE)
    4346        .rel.plt : {
     
    8285#if defined(SHLIB) || defined(DLEXE)
    8386        .data.rel : {
    84                 *(.data.rel .data.rel.*);
     87                *(.data.rel .data.rel.*);
    8588        } :data
    86 
     89       
    8790        .got : {
    88                 *(.got);
     91                *(.got);
    8992        } :data
     93       
    9094        .got.plt : {
    91                 *(.got.plt);
     95                *(.got.plt);
    9296        } :data
    9397#endif
  • uspace/lib/c/arch/ia64/_link.ld.in

    rbd29f9c9 r542e819  
    2323#endif
    2424       
    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 */
    2926        . = ALIGN(., 16);
    3027       
  • uspace/lib/c/arch/mips32/Makefile.common

    rbd29f9c9 r542e819  
    2727#
    2828
    29 GCC_CFLAGS += -mips3 -mabi=32
     29GCC_CFLAGS += -msoft-float -mips3 -mabi=32
    3030
    3131ENDIANESS = LE
  • uspace/lib/c/arch/mips32/_link.ld.in

    rbd29f9c9 r542e819  
    2222        . = 0x4000 + SIZEOF_HEADERS;
    2323#endif
     24       
     25        /* Make sure the code is aligned reasonably */
     26        . = ALIGN(., 16);
    2427       
    2528        .init : {
  • uspace/lib/c/arch/mips32eb/Makefile.common

    rbd29f9c9 r542e819  
    2727#
    2828
    29 GCC_CFLAGS += -mips3 -mabi=32
     29GCC_CFLAGS += -msoft-float -mips3 -mabi=32
    3030
    3131ENDIANESS = BE
  • uspace/lib/c/arch/mips64/Makefile.common

    rbd29f9c9 r542e819  
    2727#
    2828
    29 GCC_CFLAGS += -mips3 -mabi=64
     29GCC_CFLAGS += -msoft-float -mips3 -mabi=64
    3030AFLAGS = -64
    3131
  • uspace/lib/c/arch/mips64/_link.ld.in

    rbd29f9c9 r542e819  
    2323        . = 0x4000 + SIZEOF_HEADERS;
    2424#endif
     25       
     26        /* Make sure the code is aligned reasonably */
     27        . = ALIGN(., 16);
    2528       
    2629        .init : {
  • uspace/lib/c/arch/ppc32/_link.ld.in

    rbd29f9c9 r542e819  
    2323        . = 0x1000 + SIZEOF_HEADERS;
    2424#endif
     25       
     26        /* Make sure the code is aligned reasonably */
     27        . = ALIGN(., 4);
    2528       
    2629        .init : {
  • uspace/lib/c/arch/sparc64/_link.ld.in

    rbd29f9c9 r542e819  
    2222        . = 0x4000 + SIZEOF_HEADERS;
    2323#endif
     24       
     25        /* Make sure the code is aligned reasonably */
     26        . = ALIGN(., 16);
    2427       
    2528        .init : {
  • uspace/lib/c/generic/str.c

    rbd29f9c9 r542e819  
    431431 * and both strings consist of the same sequence of characters.
    432432 *
    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.
    436437 *
    437438 * @param s1 First string to compare.
    438439 * @param s2 Second string to compare.
    439440 *
    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.
    442443 *
    443444 */
     
    475476 * up to max_len characters.
    476477 *
    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.
    480483 *
    481484 * @param s1      First string to compare.
     
    483486 * @param max_len Maximum number of characters to consider.
    484487 *
    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.
    487490 *
    488491 */
  • uspace/srv/net/tcp/sock.c

    rbd29f9c9 r542e819  
    779779        }
    780780
     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
    781786        rc = socket_destroy(NULL, socket_id, &client->sockets, &gsock,
    782787            tcp_free_sock_data);
     
    839844        log_msg(LVL_DEBUG, "tcp_sock_recv_fibril()");
    840845
     846        fibril_mutex_lock(&sock->recv_buffer_lock);
     847
    841848        while (true) {
    842849                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)
    845851                        fibril_condvar_wait(&sock->recv_buffer_cv,
    846852                            &sock->recv_buffer_lock);
     
    852858                        sock->recv_error = trc;
    853859                        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);
    856862                        break;
    857863                }
     
    861867                sock->recv_buffer_used = data_len;
    862868                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);
    866874
    867875        tcp_uc_delete(sock->conn);
  • version

    rbd29f9c9 r542e819  
    3636
    3737VERSION = 0
    38 PATCHLEVEL = 4
    39 SUBLEVEL = 3
     38PATCHLEVEL = 5
     39SUBLEVEL = 0
    4040
    4141ifdef EXTRAVERSION
     
    4545endif
    4646
    47 NAME = Sashimi
     47NAME = Fajtl
    4848COPYRIGHT = Copyright (c) 2001-2012 HelenOS project
Note: See TracChangeset for help on using the changeset viewer.