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
2747 5997 d 23 h jermar /trunk/uspace/ Move the core lookup logic from TMPFS to libfs.  
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2745 5998 d 10 h decky /trunk/ code cleanup (mostly signed/unsigned)
allow extra compiler warnings
 
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/src/mm/page.c
/trunk/kernel/arch/arm32/src/arm32.c
/trunk/kernel/arch/arm32/src/cpu/cpu.c
/trunk/kernel/arch/arm32/src/debug/print.c
/trunk/kernel/arch/ia32xen/src/mm/tlb.c
/trunk/kernel/arch/ia32xen/src/smp/mps.c
/trunk/kernel/arch/ia32xen/src/smp/smp.c
/trunk/kernel/arch/ia64/src/ia64.c
/trunk/kernel/arch/ia64/src/mm/tlb.c
/trunk/kernel/arch/mips32/src/cpu/cpu.c
/trunk/kernel/arch/mips32/src/debugger.c
/trunk/kernel/arch/mips32/src/drivers/arc.c
/trunk/kernel/arch/mips32/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/mm/frame.c
/trunk/kernel/arch/sparc64/src/mm/page.c
/trunk/kernel/arch/sparc64/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/smp/ipi.c
/trunk/kernel/genarch/src/ofw/ebus.c
/trunk/kernel/genarch/src/ofw/fhc.c
/trunk/kernel/genarch/src/ofw/ofw_tree.c
/trunk/kernel/genarch/src/ofw/pci.c
/trunk/kernel/genarch/src/ofw/sbus.c
/trunk/kernel/generic/include/lib/elf.h
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/include/mm/slab.h
/trunk/kernel/generic/src/debug/symtab.c
/trunk/kernel/generic/src/interrupt/interrupt.c
/trunk/kernel/generic/src/ipc/irq.c
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/kernel/generic/src/lib/elf.c
/trunk/kernel/generic/src/lib/func.c
/trunk/kernel/generic/src/lib/memstr.c
/trunk/kernel/generic/src/lib/sort.c
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/mm/backend_anon.c
/trunk/kernel/generic/src/mm/backend_elf.c
/trunk/kernel/generic/src/mm/frame.c
/trunk/kernel/generic/src/mm/slab.c
/trunk/kernel/generic/src/mm/tlb.c
/trunk/kernel/generic/src/printf/printf_core.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/synch/futex.c
/trunk/kernel/generic/src/time/clock.c
/trunk/kernel/test/avltree/avltree1.c
/trunk/kernel/test/fpu/fpu1.c
/trunk/kernel/test/fpu/mips2.c
/trunk/kernel/test/fpu/sse1.c
/trunk/kernel/test/mm/falloc2.c
/trunk/kernel/test/synch/rwlock5.c
/trunk/kernel/test/test.c
/trunk/kernel/test/thread/thread1.c
/trunk/uspace/lib/libc/arch/ppc64/src/syscall.c
2741 6004 d 1 h jermar /trunk/uspace/lib/libc/generic/ Prevent read() and write() from returning an uninitialized error return value.  
/trunk/uspace/lib/libc/generic/vfs.c
2735 6008 d 6 h jermar /trunk/uspace/ Support for rmdir(), unlink() and the respective VFS operations.  
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/unistd.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_ops.c
2734 6008 d 7 h jermar /trunk/uspace/ Support for close().  
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/errno.h
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_ops.c
2733 6008 d 8 h jermar /trunk/uspace/ Add TMPFS support for destroying leaf links in the file system namespace.  
/trunk/uspace/lib/libc/include/errno.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2718 6022 d 5 h cejka /trunk/uspace/lib/libc/arch/ia32/ Added setjmp and longjmp functions for ia32 architecture.  
/trunk/uspace/lib/libc/arch/ia32/include/setjmp.h
/trunk/uspace/lib/libc/arch/ia32/src/setjmp.S
/trunk/uspace/lib/libc/arch/ia32/Makefile.inc
2710 6029 d 3 h jermar /trunk/uspace/ VFS_WRITE and tmpfs_write fixes.  
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs_ops.c
2708 6029 d 6 h jermar /trunk/uspace/ VFS_OPEN now understands O_CREAT and O_EXCL.  
/trunk/uspace/lib/libc/include/fcntl.h
/trunk/uspace/srv/vfs/vfs_ops.c
2707 6029 d 7 h jermar /trunk/uspace/ Support for mkdir().  
/trunk/uspace/lib/libc/include/sys/stat.h
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/sys/types.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_lookup.c
/trunk/uspace/srv/vfs/vfs_ops.c
2705 6030 d 0 h jermar /trunk/uspace/ More elegant, flexible and complete version of tmpfs_lookup.  
/trunk/uspace/lib/libc/include/errno.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2700 6037 d 8 h jermar /trunk/uspace/ Introduce the notion of lflag (i.e. lookup flags) to support the ability to
limit the scope of VFS node types that can be opened by open() and opendir(). In
the future, lflag will also specify actions for VFS_LOOKUP handlers that will be
carried out in situations such as the VFS node is not found (e.g. implementation
of mkdir() and open() with O_CREAT in oflag).
 
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_lookup.c
/trunk/uspace/srv/vfs/vfs_ops.c
2699 6037 d 22 h jermar /trunk/uspace/ Finish implementation of readdir(). Functions from this family are implemented
via using file descriptors for directories. For example, readdir() is
implemented as read() from an open directory. Of course, FS implementations
must understand that they are asked to read a directory and behave accordingly.
 
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/dirent.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2694 6043 d 2 h jermar /trunk/uspace/lib/libc/ Add opendir(), rewinddir(), closedir() and some prototypes and stubs. Add dirent.h.  
/trunk/uspace/lib/libc/include/dirent.h
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/unistd.h
2693 6043 d 9 h jermar /trunk/uspace/ Add ftruncate() and support for VFS_TRUNCATE to VFS and TMPFS.  
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/unistd.h
/trunk/uspace/srv/fs/tmpfs/tmpfs.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_ops.c
2688 6048 d 1 h jermar /trunk/uspace/ Make uspace rwlock API naming conventions consistent with kernel rwlock API.  
/trunk/uspace/lib/libc/include/rwlock.h
/trunk/uspace/srv/vfs/vfs_mount.c
/trunk/uspace/srv/vfs/vfs_open.c
/trunk/uspace/srv/vfs/vfs_rdwr.c
2684 6050 d 2 h jermar /trunk/ Add libc and VFS implementation of lseek(), VFS_SEEK resp.
Add the size member to the VFS node structure (not yet initialized).
 
/trunk/kernel/generic/include/errno.h
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/unistd.h
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_rdwr.c
2682 6050 d 8 h jermar /trunk/uspace/ Fix type in declaration of VFS node rwlock.
Introduce a dedicated type for futexes. Make the existing futex code use this
newly introduced type and fix formatting in futex.c.
 
/trunk/uspace/lib/libc/generic/futex.c
/trunk/uspace/lib/libc/include/futex.h
/trunk/uspace/srv/vfs/vfs.h
2681 6050 d 9 h jermar /trunk/uspace/ Turn the namespace futex into rwlock.  
/trunk/uspace/lib/libc/include/rwlock.h
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_mount.c
/trunk/uspace/srv/vfs/vfs_open.c
/trunk/uspace/srv/vfs/vfs_unlink.c
2680 6050 d 9 h jermar /trunk/uspace/ Add basic rwlock API for uspace so that VFS can be designed/implemented using
this API. So far, the implementation of this API merely wraps futexes into
rwlocks. Real rwlocks are wanted by ticket #54.

Using the new rwlock API, replace the VFS node content futex with an rwlock.
Lock the contents rwlock as reader on reads and as writer on writes.
 
/trunk/uspace/lib/libc/include/rwlock.h
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_node.c
/trunk/uspace/srv/vfs/vfs_rdwr.c

Show All