Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
4591 |
5577 d 12 h |
decky |
/trunk/uspace/ |
add support for creating null devices on demand |
|
/trunk/uspace/lib/libc/generic/devmap.c /trunk/uspace/lib/libc/include/devmap.h /trunk/uspace/lib/libc/include/ipc/devmap.h /trunk/uspace/srv/devmap/devmap.c
|
4587 |
5578 d 6 h |
jermar |
/trunk/uspace/ |
Implement stat() and VFS_IN_STAT.
Modify bdsh() to use stat() during ls.
In devfs, allow lookups that don't
specify one of L_FILE and L_DIRECTORY. |
|
/trunk/uspace/app/bdsh/cmds/modules/ls/ls.c /trunk/uspace/app/bdsh/cmds/modules/ls/ls.h /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/sys/stat.h /trunk/uspace/srv/fs/devfs/devfs_ops.c /trunk/uspace/srv/vfs/vfs_ops.c
|
4585 |
5578 d 9 h |
jermar |
/trunk/uspace/ |
Introduce VFS_IN_FSTAT and VFS_OUT_STAT.
Provide libc fstat() and devfs_stat().
This functionality replaces VFS_IN_NODE
and VFS_IN/OUT_DEVICE. FAT and TMPFS
still do not implement this and VFS_IN_STAT
and stat() need implementation as well. |
|
/trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/ipc/vfs.h /trunk/uspace/lib/libc/include/sys/stat.h /trunk/uspace/srv/fs/devfs/devfs.c /trunk/uspace/srv/fs/devfs/devfs_ops.c /trunk/uspace/srv/fs/devfs/devfs_ops.h /trunk/uspace/srv/fs/fat/fat.c /trunk/uspace/srv/fs/fat/fat.h /trunk/uspace/srv/fs/fat/fat_ops.c /trunk/uspace/srv/fs/tmpfs/tmpfs.c /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
|
4584 |
5578 d 14 h |
jermar |
/trunk/uspace/ |
Separate the VFS input and output protocols. |
|
/trunk/uspace/app/trace/trace.c /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/ipc/console.h /trunk/uspace/lib/libc/include/ipc/vfs.h /trunk/uspace/lib/libfs/libfs.c /trunk/uspace/srv/console/console.c /trunk/uspace/srv/fs/devfs/devfs.c /trunk/uspace/srv/fs/fat/fat.c /trunk/uspace/srv/fs/tmpfs/tmpfs.c /trunk/uspace/srv/vfs/vfs.c /trunk/uspace/srv/vfs/vfs_lookup.c /trunk/uspace/srv/vfs/vfs_node.c /trunk/uspace/srv/vfs/vfs_ops.c
|
4556 |
5588 d 19 h |
decky |
/trunk/ |
define endianess externally to be able to exactly specify whether we are using UTF-32LE or UTF-32BE
quit messing with BOM in UTF-32 |
|
/trunk/kernel/arch/amd64/include/byteorder.h /trunk/kernel/arch/arm32/include/byteorder.h /trunk/kernel/arch/ia32/include/byteorder.h /trunk/kernel/arch/ia64/include/byteorder.h /trunk/kernel/arch/mips32/include/byteorder.h /trunk/kernel/arch/ppc32/include/byteorder.h /trunk/kernel/arch/sparc64/include/byteorder.h /trunk/uspace/lib/libc/arch/amd64/include/byteorder.h /trunk/uspace/lib/libc/arch/arm32/include/byteorder.h /trunk/uspace/lib/libc/arch/ia32/include/byteorder.h /trunk/uspace/lib/libc/arch/ia64/include/byteorder.h /trunk/uspace/lib/libc/arch/mips32/include/byteorder.h /trunk/uspace/lib/libc/arch/mips32eb/include/byteorder.h /trunk/uspace/lib/libc/arch/ppc32/include/byteorder.h /trunk/uspace/lib/libc/arch/sparc64/include/byteorder.h
/trunk/kernel/Makefile /trunk/kernel/arch/amd64/Makefile.inc /trunk/kernel/arch/arm32/Makefile.inc /trunk/kernel/arch/ia32/Makefile.inc /trunk/kernel/arch/ia64/Makefile.inc /trunk/kernel/arch/mips32/Makefile.inc /trunk/kernel/arch/mips32/include/elf.h /trunk/kernel/arch/ppc32/Makefile.inc /trunk/kernel/arch/sparc64/Makefile.inc /trunk/kernel/generic/include/byteorder.h /trunk/kernel/generic/include/string.h /trunk/kernel/generic/src/printf/printf_core.c /trunk/uspace/lib/libc/Makefile /trunk/uspace/lib/libc/Makefile.toolchain /trunk/uspace/lib/libc/arch/amd64/Makefile.inc /trunk/uspace/lib/libc/arch/arm32/Makefile.inc /trunk/uspace/lib/libc/arch/ia32/Makefile.inc /trunk/uspace/lib/libc/arch/ia64/Makefile.inc /trunk/uspace/lib/libc/arch/mips32/Makefile.inc /trunk/uspace/lib/libc/arch/mips32eb/Makefile.inc /trunk/uspace/lib/libc/arch/ppc32/Makefile.inc /trunk/uspace/lib/libc/arch/sparc64/Makefile.inc /trunk/uspace/lib/libc/generic/io/printf_core.c /trunk/uspace/lib/libc/include/byteorder.h /trunk/uspace/lib/libc/include/string.h /trunk/uspace/lib/softfloat/Makefile /trunk/uspace/lib/softfloat/include/sftypes.h
|
4542 |
5591 d 6 h |
jermar |
/trunk/uspace/ |
Handle pending input using only one fibril.
Relax serialization in console, keep your fingers crossed.
Do not create a new "pending" fibril after each received call. |
|
/trunk/uspace/lib/libc/generic/async.c /trunk/uspace/lib/libc/include/async.h /trunk/uspace/srv/console/console.c
|
4541 |
5591 d 6 h |
svoboda |
/trunk/uspace/ |
Stdio stream buffering (only for writing a.t.m.) Issue: Do we need two moving delimiters (head, tail) to recover from error or is one moving data delimiter enough, like in the current implementation? (Where the buffer must be drained as a whole, cannot do it part at a time. |
|
/trunk/uspace/app/bdsh/input.c /trunk/uspace/app/tester/console/console1.c /trunk/uspace/app/tetris/screen.c /trunk/uspace/lib/libc/generic/io/io.c /trunk/uspace/lib/libc/include/stdio.h
|
4535 |
5592 d 15 h |
jermar |
/trunk/uspace/lib/libc/ |
On condvar signal/broadcast, dequeue the waiting fibril from the waiters list.
Add FIBRIL_CONDVAR_INITIALIZE. |
|
/trunk/uspace/lib/libc/generic/fibril_sync.c /trunk/uspace/lib/libc/include/fibril_sync.h
|
4528 |
5594 d 8 h |
svoboda |
/trunk/uspace/ |
Use 'fibril_local' modifier for fibril-local variables instead of '__thread'. Since it is decalred in fibril.h, it need not begin with '__'. |
|
/trunk/uspace/lib/libc/arch/arm32/include/tls.h /trunk/uspace/lib/libc/generic/async.c /trunk/uspace/lib/libc/generic/fibril.c /trunk/uspace/lib/libc/include/fibril.h /trunk/uspace/srv/fb/fb.c /trunk/uspace/srv/vfs/vfs_file.c
|
4527 |
5594 d 10 h |
jermar |
/trunk/uspace/lib/libc/ |
Condition variables for fibrils. |
|
/trunk/uspace/lib/libc/generic/fibril_sync.c /trunk/uspace/lib/libc/include/fibril_sync.h
|
4526 |
5595 d 7 h |
jermar |
/trunk/uspace/lib/libc/ |
Implement readers-writer locks for fibrils. |
|
/trunk/uspace/lib/libc/generic/fibril_sync.c /trunk/uspace/lib/libc/include/fibril.h /trunk/uspace/lib/libc/include/fibril_sync.h
|
4522 |
5596 d 9 h |
decky |
/trunk/uspace/lib/libc/ |
remove obsolete comment
cstyle |
|
/trunk/uspace/lib/libc/generic/fibril.c /trunk/uspace/lib/libc/include/fibril_sync.h
|
4516 |
5597 d 6 h |
jermar |
/trunk/uspace/lib/libc/ |
Add simple synchronization primitives to be used with fibrils.
Provided are mutexes and dummy rwlocks. |
|
/trunk/uspace/lib/libc/generic/fibril_sync.c /trunk/uspace/lib/libc/include/fibril_sync.h
|
4514 |
5597 d 17 h |
decky |
/trunk/uspace/lib/libc/ |
simple implementation of fdopen() and rewind() |
|
/trunk/uspace/lib/libc/generic/io/io.c /trunk/uspace/lib/libc/include/stdio.h
|
4509 |
5598 d 14 h |
decky |
/trunk/uspace/ |
rename libadt -> adt |
|
/trunk/uspace/lib/libc/generic/adt /trunk/uspace/lib/libc/include/adt
/trunk/uspace/lib/libc/generic/libadt /trunk/uspace/lib/libc/include/libadt
/trunk/uspace/app/trace/ipcp.c /trunk/uspace/app/trace/proto.c /trunk/uspace/app/trace/proto.h /trunk/uspace/lib/libblock/libblock.c /trunk/uspace/lib/libblock/libblock.h /trunk/uspace/lib/libc/Makefile /trunk/uspace/lib/libc/generic/adt/hash_table.c /trunk/uspace/lib/libc/generic/adt/list.c /trunk/uspace/lib/libc/generic/async.c /trunk/uspace/lib/libc/generic/fibril.c /trunk/uspace/lib/libc/generic/io/io.c /trunk/uspace/lib/libc/generic/ipc.c /trunk/uspace/lib/libc/include/adt/hash_table.h /trunk/uspace/lib/libc/include/fibril.h /trunk/uspace/lib/libc/include/ipc/devmap.h /trunk/uspace/lib/libc/include/stdio.h /trunk/uspace/srv/console/console.c /trunk/uspace/srv/fs/devfs/devfs_ops.c /trunk/uspace/srv/fs/fat/fat_idx.c /trunk/uspace/srv/fs/fat/fat_ops.c /trunk/uspace/srv/fs/tmpfs/tmpfs.h /trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c /trunk/uspace/srv/kbd/Makefile /trunk/uspace/srv/kbd/genarch/gsp.c /trunk/uspace/srv/kbd/generic/kbd.c /trunk/uspace/srv/kbd/include/gsp.h /trunk/uspace/srv/ns/clonable.c /trunk/uspace/srv/ns/service.c /trunk/uspace/srv/ns/task.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_node.c /trunk/uspace/srv/vfs/vfs_ops.c /trunk/uspace/srv/vfs/vfs_register.c
|
4508 |
5598 d 15 h |
decky |
/trunk/uspace/lib/libc/ |
keep a list of open files to support proper cleanup |
|
/trunk/uspace/lib/libc/generic/io/io.c /trunk/uspace/lib/libc/generic/libc.c /trunk/uspace/lib/libc/generic/task.c /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/stdio.h /trunk/uspace/lib/libc/include/vfs/vfs.h
|
4492 |
5602 d 18 h |
jermar |
/trunk/uspace/ |
inode_t -> fdi_node_t |
|
/trunk/uspace/lib/libc/generic/io/io.c /trunk/uspace/lib/libc/generic/loader.c /trunk/uspace/lib/libc/generic/task.c /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/loader/loader.h /trunk/uspace/lib/libc/include/loader/pcb.h /trunk/uspace/lib/libc/include/vfs/vfs.h /trunk/uspace/srv/loader/main.c
|
4491 |
5603 d 5 h |
decky |
/trunk/uspace/ |
rename libc's fs_node_t to inode_t to avoid type conflict with VFS |
|
/trunk/uspace/lib/libc/generic/io/io.c /trunk/uspace/lib/libc/generic/loader.c /trunk/uspace/lib/libc/generic/task.c /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/loader/loader.h /trunk/uspace/lib/libc/include/loader/pcb.h /trunk/uspace/lib/libc/include/vfs/vfs.h /trunk/uspace/srv/loader/main.c
|
4482 |
5603 d 8 h |
decky |
/trunk/uspace/lib/libc/ |
I/O subsystem overhaul:
- add more POSIX-like file and stream functions (with real functionality of stdin, stdout, stderr)
- cleanup console access methods (now generic to any console-like device)
- remove unsafe stream functions
- add special open_node(), fd_node(), fd_phone() (file) and fopen_node(), fnode(), fphone() (stream) functions for HelenOS-specific I/O operations |
|
/trunk/uspace/lib/libc/generic/io/console.c /trunk/uspace/lib/libc/generic/io/klog.c /trunk/uspace/lib/libc/include/io/color.h /trunk/uspace/lib/libc/include/io/console.h /trunk/uspace/lib/libc/include/io/keycode.h /trunk/uspace/lib/libc/include/io/klog.h /trunk/uspace/lib/libc/include/io/style.h
/trunk/uspace/lib/libc/generic/console.c /trunk/uspace/lib/libc/generic/io/fprintf.c /trunk/uspace/lib/libc/generic/io/sprintf.c /trunk/uspace/lib/libc/generic/io/stdio.c /trunk/uspace/lib/libc/generic/io/stream.c /trunk/uspace/lib/libc/generic/io/vsprintf.c /trunk/uspace/lib/libc/generic/kbd.c /trunk/uspace/lib/libc/include/console /trunk/uspace/lib/libc/include/console.h /trunk/uspace/lib/libc/include/io/io.h /trunk/uspace/lib/libc/include/io/stream.h /trunk/uspace/lib/libc/include/kbd
/trunk/uspace/lib/libc/Makefile /trunk/uspace/lib/libc/generic/io/asprintf.c /trunk/uspace/lib/libc/generic/io/io.c /trunk/uspace/lib/libc/generic/io/printf.c /trunk/uspace/lib/libc/generic/io/printf_core.c /trunk/uspace/lib/libc/generic/io/snprintf.c /trunk/uspace/lib/libc/generic/io/vprintf.c /trunk/uspace/lib/libc/generic/io/vsnprintf.c /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/dirent.h /trunk/uspace/lib/libc/include/fcntl.h /trunk/uspace/lib/libc/include/fibril.h /trunk/uspace/lib/libc/include/io/printf_core.h /trunk/uspace/lib/libc/include/stdio.h /trunk/uspace/lib/libc/include/unistd.h /trunk/uspace/lib/libc/include/vfs/vfs.h
|
4481 |
5603 d 8 h |
decky |
/trunk/uspace/lib/libc/include/ipc/ |
sync header files with implementation
coding style |
|
/trunk/uspace/lib/libc/include/ipc/vfs.h
/trunk/uspace/lib/libc/include/ipc/console.h /trunk/uspace/lib/libc/include/ipc/ipc.h /trunk/uspace/lib/libc/include/ipc/loader.h /trunk/uspace/lib/libc/include/ipc/ns.h
|
4480 |
5603 d 8 h |
decky |
/trunk/uspace/lib/libc/include/loader/ |
sync header files with implementation |
|
/trunk/uspace/lib/libc/include/loader/loader.h /trunk/uspace/lib/libc/include/loader/pcb.h
|
4479 |
5603 d 8 h |
decky |
/trunk/uspace/lib/libc/include/ |
add error constant from VFS
cleanup |
|
/trunk/uspace/lib/libc/include/errno.h
|
4475 |
5603 d 9 h |
decky |
/trunk/uspace/lib/libc/ |
async framework: add generic support for processing pending operations (in a separate fibril)
coding style |
|
/trunk/uspace/lib/libc/generic/async.c /trunk/uspace/lib/libc/include/async.h
|
4472 |
5603 d 9 h |
decky |
/trunk/uspace/lib/libc/ |
replace count_t with size_t
coding style |
|
/trunk/uspace/lib/libc/generic/string.c /trunk/uspace/lib/libc/include/string.h
|
4470 |
5603 d 9 h |
decky |
/trunk/uspace/lib/libc/ |
pass current task stdin, stdout and stderr as preset files to the loader
add task_wait() |
|
/trunk/uspace/lib/libc/generic/task.c /trunk/uspace/lib/libc/include/task.h
|
4453 |
5603 d 9 h |
decky |
/trunk/uspace/lib/libc/include/ |
port macros from kernel |
|
/trunk/uspace/lib/libc/include/macros.h
|
4416 |
5616 d 21 h |
decky |
/trunk/uspace/ |
improve devmap interface
remove spared device |
|
/trunk/uspace/app/tester/devmap/devmap1.c /trunk/uspace/lib/libc/generic/devmap.c /trunk/uspace/lib/libc/include/devmap.h /trunk/uspace/lib/libc/include/ipc/devmap.h /trunk/uspace/srv/bd/gxe_bd/gxe_bd.c /trunk/uspace/srv/devmap/devmap.c /trunk/uspace/srv/rd/rd.c
|
4415 |
5616 d 21 h |
decky |
/trunk/uspace/lib/libc/ |
add list_count()
cstyle |
|
/trunk/uspace/lib/libc/generic/libadt/list.c /trunk/uspace/lib/libc/include/libadt/list.h
|
4401 |
5619 d 8 h |
svoboda |
/trunk/uspace/ |
C binding for devmap. Gets rid of duplicate code. |
|
/trunk/uspace/lib/libc/generic/devmap.c /trunk/uspace/lib/libc/include/devmap.h
/trunk/uspace/app/tester/devmap/devmap1.c /trunk/uspace/lib/libblock/libblock.c /trunk/uspace/lib/libc/Makefile /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/ipc/devmap.h /trunk/uspace/lib/libc/include/vfs/vfs.h /trunk/uspace/srv/rd/rd.c /trunk/uspace/srv/vfs/vfs.h
|
4400 |
5619 d 10 h |
svoboda |
/trunk/uspace/ |
Rename ramdisk protocol -> block device protocol. |
|
/trunk/uspace/lib/libc/include/ipc/bd.h
/trunk/uspace/srv/rd/rd.h
/trunk/uspace/lib/libblock/libblock.c /trunk/uspace/srv/rd/rd.c
|
4365 |
5629 d 16 h |
jermar |
/trunk/uspace/lib/libc/include/ |
Fix doxygen comments. |
|
/trunk/uspace/lib/libc/include/string.h
|
4353 |
5634 d 19 h |
svoboda |
/trunk/uspace/lib/libc/ |
klog_puts() is useful for debugging. |
|
/trunk/uspace/lib/libc/generic/io/stream.c /trunk/uspace/lib/libc/include/io/stream.h
|
4326 |
5643 d 7 h |
svoboda |
/trunk/uspace/ |
Use better method names. |
|
/trunk/uspace/lib/libc/include/ipc/fb.h /trunk/uspace/srv/console/console.c /trunk/uspace/srv/fb/ega.c /trunk/uspace/srv/fb/fb.c /trunk/uspace/srv/fb/serial_console.c
|
4325 |
5643 d 7 h |
svoboda |
/trunk/uspace/ |
Better switch to kcon on serial console -- relinquish/reclaim screen before/after switching to kcon. |
|
/trunk/uspace/lib/libc/include/ipc/fb.h /trunk/uspace/srv/console/console.c /trunk/uspace/srv/fb/ega.c /trunk/uspace/srv/fb/fb.c /trunk/uspace/srv/fb/serial_console.c
|
4324 |
5643 d 12 h |
decky |
/trunk/uspace/lib/libc/ |
create a new fibril for each notification received, which allows to do nested async calls from the notification handler
(this fixes ticket #19 and solves various problems with klog) |
|
/trunk/uspace/lib/libc/generic/async.c /trunk/uspace/lib/libc/include/async.h
|
4317 |
5643 d 20 h |
decky |
/trunk/ |
use buffering for klog output (this can be used to avoid the ugly usleeps while starting tasks)
unify and cleanup console.c and related files |
|
/trunk/kernel/generic/src/main/kinit.c /trunk/uspace/app/init/init.c /trunk/uspace/app/tetris/input.c /trunk/uspace/lib/libc/generic/console.c /trunk/uspace/lib/libc/generic/io/io.c /trunk/uspace/lib/libc/generic/io/stream.c /trunk/uspace/lib/libc/generic/io/vprintf.c /trunk/uspace/lib/libc/generic/kbd.c /trunk/uspace/lib/libc/generic/libc.c /trunk/uspace/lib/libc/include/console.h /trunk/uspace/lib/libc/include/io/stream.h
|
4305 |
5649 d 12 h |
jermar |
/trunk/uspace/ |
Support mount options.
Let tmpfs decide whether to start empty or restored a TMPFS dump based on the mount option. |
|
/trunk/uspace/app/init/init.c /trunk/uspace/app/tester/vfs/vfs1.c /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/vfs/vfs.h /trunk/uspace/srv/fs/fat/fat_ops.c /trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c /trunk/uspace/srv/vfs/vfs.h /trunk/uspace/srv/vfs/vfs_ops.c
|
4293 |
5651 d 16 h |
decky |
/trunk/uspace/lib/libc/ |
don't forget to flush the console after the application finishes
(yes, this is not very elegant, but until we have a proper stdin/stdout/stderr, the whole console stuff, buffering, etc. is just a big heap of hacks) |
|
/trunk/uspace/lib/libc/generic/console.c /trunk/uspace/lib/libc/generic/libc.c /trunk/uspace/lib/libc/include/console.h
|
4280 |
5653 d 8 h |
svoboda |
/trunk/uspace/lib/libc/ |
strcat() -> str_append(). |
|
/trunk/uspace/lib/libc/generic/string.c /trunk/uspace/lib/libc/generic/vfs/vfs.c /trunk/uspace/lib/libc/include/string.h
|
4279 |
5653 d 9 h |
svoboda |
/trunk/uspace/ |
Nuke strncmp(). |
|
/trunk/uspace/lib/libc/generic/getopt.c /trunk/uspace/lib/libc/generic/string.c /trunk/uspace/lib/libc/include/string.h /trunk/uspace/srv/vfs/vfs_ops.c
|