Subversion Repositories HelenOS

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
2989 5889 d 21 h svoboda /branches/dynload/uspace/ Simplify rtld bootstrap by passing its bias and dynamic section pointer in PCB  
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/iloader/include/pcb.h
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c
2985 5890 d 0 h svoboda /branches/dynload/ Fix as_area_change_flags() and use it in elf_loader.c  
/branches/dynload/kernel/generic/src/mm/as.c
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/lib/libc/generic/as.c
2984 5890 d 1 h svoboda /branches/dynload/ Add as_area_change_flags() syscall and libc wrapper. Implementation limited to non-shared areas of anonymous memory.  
/branches/dynload/kernel/generic/include/mm/as.h
/branches/dynload/kernel/generic/include/syscall/syscall.h
/branches/dynload/kernel/generic/src/mm/as.c
/branches/dynload/kernel/generic/src/syscall/syscall.c
/branches/dynload/uspace/lib/libc/generic/as.c
/branches/dynload/uspace/lib/libc/include/as.h
2983 5890 d 5 h svoboda /branches/dynload/uspace/ Remove TLS sections from dltest. Do not add bias to absolute symbols (_tls_alignment). dltest now says hello.  
/branches/dynload/uspace/app/dltest/_link.ld.in
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/rtld.c
2982 5890 d 17 h svoboda /branches/dynload/uspace/ Link dltest with libc.so. Runs, but no console output.  
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/iloader/include/pcb.h
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/libc-shared/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/dynamic.c
/branches/dynload/uspace/lib/rtld/rtld.c
2981 5890 d 18 h svoboda /branches/dynload/uspace/lib/rtld/ Let rtld analyze its own dynamic section. Search for symbols in all rtld, program, lib. Resolve references in library, too.  
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/rtld.c
/branches/dynload/uspace/lib/rtld/symbol.c
2980 5890 d 19 h svoboda /branches/dynload/uspace/lib/rtld/ Fix handling of absent soname and rpath fields in .dynamic section. Slightly improve symbol search.  
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/dynamic.c
/branches/dynload/uspace/lib/rtld/include/arch.h
/branches/dynload/uspace/lib/rtld/include/elf_dyn.h
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/include/symbol.h
/branches/dynload/uspace/lib/rtld/rtld.c
/branches/dynload/uspace/lib/rtld/symbol.c
2979 5890 d 23 h svoboda /branches/dynload/uspace/ Build shared C library  
/branches/dynload/uspace/lib/libc-shared
/branches/dynload/uspace/lib/libc-shared/Makefile
/branches/dynload/uspace/lib/libc-shared/_link.ld.in
/branches/dynload/uspace/Makefile
2978 5890 d 23 h svoboda /branches/dynload/uspace/ Trivially link unresolved references from dltest to libtest  
/branches/dynload/uspace/lib/rtld/include/symbol.h
/branches/dynload/uspace/lib/rtld/symbol.c
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/include/arch.h
/branches/dynload/uspace/lib/rtld/include/dynamic.h
/branches/dynload/uspace/lib/rtld/include/elf_dyn.h
/branches/dynload/uspace/lib/rtld/rtld.c
2975 5891 d 23 h svoboda /branches/dynload/uspace/lib/rtld/ Remove obsolete code fragments  
/branches/dynload/uspace/lib/rtld/syscall.S
/branches/dynload/uspace/lib/rtld/arch/ia32/src/runtime.c
2973 5891 d 23 h svoboda /branches/dynload/uspace/ Parse program's relocation table  
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/include/arch.h
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/lib/rtld/arch/ia32/Makefile.inc
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/rtld.c
2972 5892 d 1 h svoboda /branches/dynload/uspace/ Add so_bias argument to elf_load_file(). Successfully load libtest.so into memory.  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iloader/include/elf_load.h
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/lib/rtld/rtld.c
2971 5892 d 1 h svoboda /branches/dynload/uspace/ Add libtest to iramfs. Link rtld with position-independent libsoftfloat.  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/src/runtime.c
/branches/dynload/uspace/lib/softint/Makefile
2970 5892 d 2 h svoboda /branches/dynload/uspace/lib/libtest/ Fix symlink  
/branches/dynload/uspace/lib/libtest/libtest.so.0
2969 5892 d 17 h svoboda /branches/dynload/uspace/ Incorporate ELF loader from iloader to rtld  
/branches/dynload/uspace/app/iloader/include
/branches/dynload/uspace/app/iloader/include/elf.h
/branches/dynload/uspace/app/iloader/include/elf_load.h
/branches/dynload/uspace/app/iloader/include/pcb.h
/branches/dynload/uspace/lib/rtld/elf_load.c
/branches/dynload/uspace/app/iloader/elf.h
/branches/dynload/uspace/app/iloader/elf_load.h
/branches/dynload/uspace/app/iloader/pcb.h
/branches/dynload/uspace/lib/rtld/include/elf.h
/branches/dynload/uspace/app/iloader/Makefile
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/dynamic.c
/branches/dynload/uspace/lib/rtld/include/dynamic.h
/branches/dynload/uspace/lib/rtld/rtld.c
2968 5892 d 18 h svoboda /branches/dynload/uspace/ Parse .dynamic section fields into a more useful form.  
/branches/dynload/uspace/lib/rtld/dynamic.c
/branches/dynload/uspace/lib/rtld/include/dynamic.h
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/rtld.c
2967 5892 d 22 h svoboda /branches/dynload/uspace/ For testing purposes, add a trivial shared library and a program linked to it  
/branches/dynload/uspace/app/dltest
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/_link.ld.in
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/libtest
/branches/dynload/uspace/lib/libtest/Makefile
/branches/dynload/uspace/lib/libtest/_link.ld.in
/branches/dynload/uspace/lib/libtest/libtest.c
/branches/dynload/uspace/lib/libtest/libtest.h
/branches/dynload/uspace/lib/libtest/libtest.so.0
/branches/dynload/uspace/Makefile
2966 5893 d 1 h svoboda /branches/dynload/uspace/lib/rtld/ Define more ELF constants and use them  
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c
/branches/dynload/uspace/lib/rtld/include/elf_dyn.h
2965 5893 d 1 h svoboda /branches/dynload/uspace/ Add headers for dynamic-loading-related ELF stuff. Reorganize rtld include directories.  
/branches/dynload/uspace/lib/rtld/arch/ia32/include
/branches/dynload/uspace/lib/rtld/arch/ia32/include/elf_dyn.h
/branches/dynload/uspace/lib/rtld/arch/ia32/src
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c
/branches/dynload/uspace/lib/rtld/arch/ia32/src/entry.s
/branches/dynload/uspace/lib/rtld/arch/ia32/src/runtime.c
/branches/dynload/uspace/lib/rtld/include
/branches/dynload/uspace/lib/rtld/include/elf.h
/branches/dynload/uspace/lib/rtld/include/elf_dyn.h
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/arch/ia32/bootstrap.c
/branches/dynload/uspace/lib/rtld/arch/ia32/entry.s
/branches/dynload/uspace/lib/rtld/arch/ia32/runtime.c
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iloader/pcb.h
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/Makefile.inc
/branches/dynload/uspace/lib/rtld/rtld.c
2959 5893 d 5 h svoboda /branches/dynload/ Load both program and dynamic linker from program loader. Pass program entry point to dynamic linker and have it run the program  
/branches/dynload/tools/bin2c.py
/branches/dynload/uspace/app/iloader/arch/ia32/_link.ld.in
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/libc/generic/time.c
/branches/dynload/uspace/lib/rtld/rtld.c
2956 5893 d 18 h svoboda /branches/dynload/uspace/lib/ Temporarily force local dynamic TLS model in libc by declaring all __thread variables static. Implement a trivial __tls_get_addr() function. Now rtld works linked with libc. Yaay! :D  
/branches/dynload/uspace/lib/rtld/arch/ia32/runtime.c
/branches/dynload/uspace/lib/rtld/ulibc.c
/branches/dynload/uspace/lib/libc/generic/async.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/Makefile.inc
2955 5894 d 1 h svoboda /branches/dynload/ Build a position-independent libc  
/branches/dynload/kernel/arch/ia32/include/barrier.h
/branches/dynload/uspace/lib/libc/Makefile
2954 5894 d 3 h svoboda /branches/dynload/uspace/lib/rtld/ Read a file from rtld with more ugly hacking  
/branches/dynload/uspace/lib/rtld/rtld.c
/branches/dynload/uspace/lib/rtld/ulibc.c
2952 5894 d 18 h svoboda /branches/dynload/ Load rtld.so with iloader and make it write to console with a stripped-down version of the C library  
/branches/dynload/uspace/lib/rtld/syscall.S
/branches/dynload/uspace/lib/rtld/ulibc.c
/branches/dynload/kernel/generic/include/syscall/syscall.h
/branches/dynload/kernel/generic/src/syscall/syscall.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/bootstrap.c
/branches/dynload/uspace/lib/rtld/rtld.c
2950 5894 d 18 h svoboda /branches/dynload/uspace/lib/rtld/arch/ia32/ Fix rtld linker script with some magic so that ld produces correct DT_REL[SZ], DT_JMPREL, DT_PLTRELSZ entries  
/branches/dynload/uspace/lib/rtld/arch/ia32/_link.ld.in
2933 5897 d 0 h svoboda /branches/dynload/uspace/ Add library rtld, the future run-time dynamic linker  
/branches/dynload/uspace/lib/rtld
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch
/branches/dynload/uspace/lib/rtld/arch/ia32
/branches/dynload/uspace/lib/rtld/arch/ia32/Makefile.inc
/branches/dynload/uspace/lib/rtld/arch/ia32/_link.ld.in
/branches/dynload/uspace/lib/rtld/arch/ia32/bootstrap.c
/branches/dynload/uspace/lib/rtld/arch/ia32/entry.s
/branches/dynload/uspace/lib/rtld/rtld.c
/branches/dynload/uspace/Makefile
2927 5897 d 4 h decky /branches/dynload/ added dynload branch  
/branches/dynload
2879 5907 d 23 h jermar /trunk/uspace/lib/libc/include/libadt/ Add functions for inserting items before or after other items in a boubly-linked
circular lists.
 
/trunk/uspace/lib/libc/include/libadt/list.h
2863 5922 d 3 h jermar /trunk/uspace/ Revert libfs node_get() API to a model without the parent node pointer
argument.
 
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2861 5925 d 18 h cejka /trunk/ Used common macro for context saving on ppc64.  
/trunk/uspace/lib/libc/arch/ppc64/include/context_offset.h
/trunk/kernel/arch/ppc32/include/context_offset.h
/trunk/kernel/arch/ppc64/include/context_offset.h
/trunk/kernel/arch/ppc64/src/context.S
/trunk/uspace/lib/libc/arch/ppc64/src/fibril.S
2860 5926 d 18 h cejka /trunk/ Context handling unified for sparc64.  
/trunk/uspace/lib/libc/arch/sparc64/include/context_offset.h
/trunk/kernel/arch/sparc64/include/context_offset.h
/trunk/kernel/arch/sparc64/src/context.S
/trunk/uspace/lib/libc/arch/sparc64/src/fibril.S
2858 5927 d 11 h jermar /trunk/uspace/ libfs destroy operation should rather return an error code instead of a truth
value.
 
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2857 5927 d 11 h jermar /trunk/uspace/ Add stubs for unimplemented FAT libfs operations.  
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2852 5928 d 9 h jermar /trunk/uspace/ Add node_put() to libfs operations and instrument libfs_lookup() to use it at
appropriate places.
Add node_put() to libfs operations and instrument libfs_lookup() to use it at
appropriate places.
Add node_put() to libfs operations and instrument libfs_lookup() to use it at
appropriate places.
Add node_put() to libfs operations and instrument libfs_lookup() to use it at
appropriate places.
Add node_put() to libfs operations and instrument libfs_lookup() to use it at
appropriate places.
Add node_put() to libfs operations and instrument libfs_lookup() to use it at
appropriate places.
 
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2847 5929 d 11 h jermar /trunk/uspace/lib/libfs/ Reset the component length variable only prior collecting a new component.  
/trunk/uspace/lib/libfs/libfs.c
2846 5929 d 12 h jermar /trunk/uspace/lib/libfs/ Improve libfs_lookup() so that has_children() is not called for each character
in the pathname component.
 
/trunk/uspace/lib/libfs/libfs.c
2844 5929 d 16 h jermar /trunk/uspace/ Add fat_root_get() and fat_plb_get_char().  
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2831 5932 d 9 h jermar /trunk/uspace/ Commit progress on the FAT file system server implementation.  
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2820 5934 d 16 h decky /trunk/uspace/lib/libc/generic/ fix copy-paste typo  
/trunk/uspace/lib/libc/generic/ipc.c
2814 5935 d 1 h jermar /trunk/uspace/lib/libc/include/ipc/ Fix missing arguments to ipc_call_sync_slow() in ipc_call_sync_4_x macros.
Contributed by Jiri Svoboda.
 
/trunk/uspace/lib/libc/include/ipc/ipc.h