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
2977 5912 d 15 h svoboda /branches/dynload/uspace/app/ Transfer data in larger chunks  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iramfs/main.c
2976 5912 d 15 h svoboda /branches/dynload/uspace/ Move dltest before iramfs in makefile (problematic dependencies)  
/branches/dynload/uspace/Makefile
2975 5912 d 15 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
2974 5912 d 15 h svoboda /branches/dynload/uspace/app/dltest/ Fix dltest linker script  
/branches/dynload/uspace/app/dltest/_link.ld.in
2973 5912 d 15 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 5912 d 17 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 5912 d 18 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 5912 d 18 h svoboda /branches/dynload/uspace/lib/libtest/ Fix symlink  
/branches/dynload/uspace/lib/libtest/libtest.so.0
2969 5913 d 9 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 5913 d 10 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 5913 d 14 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 5913 d 18 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 5913 d 18 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
2964 5913 d 19 h svoboda /branches/dynload/uspace/app/iloader/ Restructure elf loader data. Extract .dynamic section address  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iloader/elf_load.h
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/app/iloader/pcb.h
2963 5913 d 20 h svoboda /branches/dynload/uspace/app/iloader/ Add missing elf_load.h  
/branches/dynload/uspace/app/iloader/elf_load.h
2962 5913 d 20 h svoboda /branches/dynload/uspace/app/iloader/ Restructure iloader. Rename elf.c to elf_load.c (need elf_load.h vs elf.h)  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iloader/elf.c
/branches/dynload/uspace/app/iloader/Makefile
/branches/dynload/uspace/app/iloader/main.c
2961 5913 d 20 h svoboda /branches/dynload/uspace/app/iloader/ Read section headers in iloader  
/branches/dynload/uspace/app/iloader/elf.c
/branches/dynload/uspace/app/iloader/main.c
2960 5913 d 21 h svoboda /branches/dynload/uspace/app/iloader/ Add missing file pcb.h. Introduces the Program Control Block (PCB)  
/branches/dynload/uspace/app/iloader/pcb.h
2959 5913 d 21 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 5914 d 11 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 5914 d 17 h svoboda /branches/dynload/ Build a position-independent libc  
/branches/dynload/kernel/arch/ia32/include/barrier.h
/branches/dynload/uspace/lib/libc/Makefile
2954 5914 d 19 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 5915 d 10 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 5915 d 10 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
2949 5915 d 11 h svoboda /branches/dynload/ Add a python script 'bin2c.py' and an application 'iramfs' to smuggle an executable file into VFS. Demonstrate by running Tetris from VFS  
/branches/dynload/tools/bin2c.py
/branches/dynload/uspace/app/iramfs
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/boot/arch/ia32/Makefile.inc
/branches/dynload/boot/arch/ia32/grub/menu.lst
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/iloader/Makefile
/branches/dynload/uspace/app/iloader/elf.c
2948 5915 d 11 h svoboda /branches/dynload/ Merged latest trunk changes into dynload  
/branches/dynload/kernel/generic/src/ipc/sysipc.c
/branches/dynload/uspace/app/tester/vfs/vfs1.c
/branches/dynload/uspace/srv/fs/fat/fat_idx.c
2933 5917 d 16 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
2932 5917 d 16 h svoboda /branches/dynload/uspace/ Fix iloader loading with bias and add it to makefile  
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/iloader/elf.c
/branches/dynload/uspace/app/iloader/main.c
2929 5917 d 19 h svoboda /branches/dynload/uspace/app/iloader/ Merge iloader (c2928) from tracing to dynload  
/branches/dynload/uspace/app/iloader
2927 5917 d 21 h decky /branches/dynload/ added dynload branch  
/branches/dynload
2910 5920 d 14 h jermar /trunk/uspace/srv/fs/fat/ Implement fat_node_put() and remove the node from the free node list when
bumping its refernce count from zero in fat_node_get().
 
/trunk/uspace/srv/fs/fat/fat_ops.c
2893 5921 d 19 h jermar /trunk/uspace/srv/fs/fat/ More bits of fat_node_get().
Still needs to do some locking.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2891 5924 d 9 h jermar /trunk/uspace/srv/fs/fat/ New first bits of fat_node_get().  
/trunk/uspace/srv/fs/fat/fat_ops.c
2890 5924 d 11 h jermar /trunk/uspace/srv/fs/fat/ Need a way to locate the FAT index structure by VFS index. Also fix code that
locates the FAT index structure by position in the file system namespace.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
2889 5927 d 10 h jermar /trunk/uspace/srv/fs/fat/ Add hash table for used fat_idx_t structures and implement fat_idx_map().  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
2884 5928 d 10 h jermar /trunk/uspace/srv/fs/fat/ merge vs. coalesce  
/trunk/uspace/srv/fs/fat/fat_idx.c
2881 5928 d 14 h jermar /trunk/uspace/srv/fs/fat/ Code for de/allocation of VFS indices for FAT.  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
2879 5928 d 15 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
2876 5928 d 18 h jermar /trunk/uspace/srv/fs/fat/ Add a dedicated source file for handling FAT indices.  
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/Makefile
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2864 5942 d 8 h jermar /trunk/uspace/srv/fs/fat/ Introduce the foundation for unique and stable FAT VFS node indices.

The first two reserved FAT entries are physically present in each FAT, so fix
the code to be aware of this.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c