Repository: /svn/ppc-dev/ppc-dev
Latest revision: 110
Total changesets: 1
Log message:
usr/src/lib/libc/port/threads/assfail.c
    Try to mitigate some second-order problems that can occur
    in common_panic().

    1. Issue message using kprintf(), instead of _write(2,...).
    File descriptor 2 will almost certainly not work.
    I think libc has not been designed and tested with
    such early panics in mind.

    Note: kprintf() works from rtld but does not work
    from within libc.  It fails while trying to resolve
    the PLT entry.

    2. Test for &assert_lock == NULL.
    This may seem stupid, because assert_lock is static,
    but, for some reason _private_lwp_mutex_lock()
    get called with NULL.  I think it might be one of those
    things where relocations have not been done yet, so the
    & operator does not work, but I am not sure.

usr/src/lib/libc/ppc/mapfile-vers
    See what happens if I specify that kprintf is DIRECT.
    Hmmmm, that didn't change anything.

/usr/src/lib/libc/ppc/sys/syscall.s
    Latest attempt at correct __systemcall and __systemcall6.

usr/src/usr/src/uts/chrp/os/trap.c
usr/src/uts/ppc/pmdb/pmdb_shell.c
usr/src/uts/ppc/pmdb/pmdb_subr.c
    Move some functions to print registers from trap code to pmdb.
    Much of the code can be reused.  pmdb_cmd_p1stack() now uses it.

usr/src/uts/ppc/sys/privregs.h
    cstyle

usr/src/lib/libc/ppc/sys/syscall.s
    __systemcall() and __systemcall6(): After the system call,
    if there is no error, the contents of %r3 is undefined.
    So, in that cse, explicitly set the return value to 0

usr/src/lib/libc/ppc/sys/__getcontext.s
usr/src/lib/libc/ppc/sys/getcontext.s
    usr/src/lib/libc/ppc/Makefile calls for __getcontext.o.
    So, make __getcontext.s the "effective" source code,
    and get rid of getcontext.s, which was a placeholder
    for an unimplemented function

Implement getsetcontext() for PowerPC.
This is an upgrade from the Solaris/PPC 2.6 code,
merged with the code that is common between the
corresponding implementations for Sparc and x86.

usr/src/uts/ppc/sys/ucontext.h
    1. Make more like modern couterparts for Sparc and x86, where
 applicable.
    2. cstyle

1. Implement __lwp_park() and friends.
2. Change the way unimplemented libc and common functions are handled.
   Still needs work, because things can go wrong very early on in rtld

usr/src/cmd/sgs/libelf/common/input.c
usr/src/cmd/sgs/libld/common/util.c
usr/src/cmd/sgs/rtld/common/a.out.c
usr/src/cmd/sgs/rtld/common/config_elf.c
usr/src/cmd/sgs/rtld/common/elf.c
usr/src/cmd/sgs/rtld/common/util.c
    Trace all calls to mmap()

usr/src/cmd/sgs/rtld/ppc/ppc_elf.c
    Trace entry to elf_bndr(), show lmp, pltoff, from

usr/src/lib/libc/ppc/gen/unimp_ppc_libc.c
    Change __dtrace_* functions into no-ops.

    The usual policy is to make sure that all functions that are not
 yet
    implemented complain and die, which is better than silently doing
    nothing.  But, since Dtrace is supposed to be as free of
 side-effects
    as possible, and since we will not be implementing Dtrace on
  PowerPC
    for quite some time, we may as well make them all no-op functions.

usr/src/lib/libc/ppc/threads/asm_subr.s
    Maybe it would be a good idea if set_curthread() returned
usr/src/cmd/sgs/rtld/ppc/boot_elf.s
    First lmp, then reloc.

usr/src/cmd/sgs/rtld/ppc/ppc_elf.c
    Trace entry into elf_plt_write()

usr/src/cmd/sgs/include/rtld.h
    Add PLT_T_26D for PowerPC.

usr/src/cmd/sgs/rtld/common/a.out.c
usr/src/cmd/sgs/rtld/common/elf.c
usr/src/cmd/sgs/rtld/common/external.c
    Add more trace messages, especially for mmap() system calls.
    Also, show value of fptr just before doing indirect function call.

usr/src/cmd/sgs/rtld/common/util.c
    1. Use kprintf() to show error messages on behalf of eprintf(),
       which is not yet in a position to send messages.
    2. Trace _ld_libc entry and exit.

usr/src/cmd/sgs/rtld/ppc/ppc_elf.c
    1. Change reachability calculations to be based on a signed 26-bit
       displacement, not 24 bits.
    2. elf_plt_write: Trace out of reach branches, just in case.
    3. elf_plt_write: Add trace messages to support sanity tests.

usr/src/lib/libc/port/threads/thr.c
    Trace _ld_libc entry and exit.

usr/src/lib/libc/ppc/gen/_divdi3.c
    Add code for __udivdi3, __umoddi3, __divdi3, and __moddi3.
    Note: this is duplicate code.  This code and
    usr/src/uts/ppc/os/gcc_implicit.c as well as the functions
    that conflict with other GCC implicit functions that are now
    defined in usr/src/lib/libc/port/fp should _ALL_ be reorganised
    and placed in usr/src/common.

usr/src/lib/libc/ppc/gen/_divdi3.s
    Get rid of the asm file that just punted to libc_unimplemented()

usr/src/lib/libc/ppc/inc/SYS.h
    SYSLWPERR: Trim the trailing nop

gs revs 976 to 984

Files:
        create: usr/src/lib/libc/ppc/gen/_divdi3.c
        create: usr/src/uts/ppc/syscall/
        create: usr/src/uts/ppc/syscall/getcontext.c
        delete: usr/src/lib/libc/ppc/gen/_divdi3.s
        delete: usr/src/lib/libc/ppc/sys/getcontext.s
        update: usr/src/cmd/sgs/include/rtld.h
        update: usr/src/cmd/sgs/libelf/common/input.c
        update: usr/src/cmd/sgs/libld/common/util.c
        update: usr/src/cmd/sgs/rtld/common/a.out.c
        update: usr/src/cmd/sgs/rtld/common/config_elf.c
        update: usr/src/cmd/sgs/rtld/common/elf.c
        update: usr/src/cmd/sgs/rtld/common/external.c
        update: usr/src/cmd/sgs/rtld/common/util.c
        update: usr/src/cmd/sgs/rtld/ppc/boot_elf.s
        update: usr/src/cmd/sgs/rtld/ppc/ppc_elf.c
        update: usr/src/lib/libc/port/threads/assfail.c
        update: usr/src/lib/libc/port/threads/thr.c
        update: usr/src/lib/libc/ppc/gen/unimp_ppc_libc.c
        update: usr/src/lib/libc/ppc/inc/SYS.h
        update: usr/src/lib/libc/ppc/mapfile-vers
        update: usr/src/lib/libc/ppc/sys/__getcontext.s
        update: usr/src/lib/libc/ppc/sys/syscall.s
        update: usr/src/lib/libc/ppc/threads/asm_subr.s
        update: usr/src/uts/chrp/os/trap.c
        update: usr/src/uts/ppc/Makefile.files
        update: usr/src/uts/ppc/os/archdep.c
        update: usr/src/uts/ppc/os/temp_bandaid.c
        update: usr/src/uts/ppc/pmdb/pmdb_shell.c
        update: usr/src/uts/ppc/pmdb/pmdb_subr.c
        update: usr/src/uts/ppc/sys/pmdb_subr.h
        update: usr/src/uts/ppc/sys/privregs.h
        update: usr/src/uts/ppc/sys/ucontext.h
 
 
This message posted from opensolaris.org

Reply via email to