Rev |
Age |
Author |
Path |
Log message |
Diff |
2728 |
6029 d 1 h |
jermar |
/trunk/uspace/srv/fs/tmpfs/ |
Descend vs. descent. |
|
2711 |
6044 d 4 h |
jermar |
/trunk/uspace/ |
Remove the debugging hack from tmpfs_init(), which created several files and
directories on the filesystem. TMPFS is now self-sufficient enough to be able
to create its content via the standard VFS interface. |
|
2710 |
6044 d 4 h |
jermar |
/trunk/uspace/ |
VFS_WRITE and tmpfs_write fixes. |
|
2707 |
6044 d 8 h |
jermar |
/trunk/uspace/ |
Support for mkdir(). |
|
2706 |
6044 d 12 h |
jermar |
/trunk/uspace/srv/fs/tmpfs/ |
Move handling of the miss on excessive components out of the main loop in
tmpfs_lookup. |
|
2705 |
6045 d 1 h |
jermar |
/trunk/uspace/ |
More elegant, flexible and complete version of tmpfs_lookup. |
|
2700 |
6052 d 10 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). |
|
2699 |
6052 d 23 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. |
|
2693 |
6058 d 10 h |
jermar |
/trunk/uspace/ |
Add ftruncate() and support for VFS_TRUNCATE to VFS and TMPFS. |
|
2690 |
6063 d 1 h |
jermar |
/trunk/uspace/srv/ |
Make a distinction between VFS operations that are common to VFS and FS
implementations, operations that are VFS only and operations that are FS
implementations only. |
|
2687 |
6063 d 3 h |
jermar |
/trunk/uspace/srv/ |
Management of the cached VFS node size. |
|
2686 |
6063 d 3 h |
jermar |
/trunk/uspace/srv/fs/tmpfs/ |
Previous commit was toxic. When emulating gaps, zero out the reallocated buffer, not the original one. |
|
2685 |
6063 d 4 h |
jermar |
/trunk/uspace/srv/fs/tmpfs/ |
TMPFS must handle file gaps. |
|
2678 |
6071 d 6 h |
jermar |
/trunk/uspace/ |
The IPC_M_SHARE_* and IPC_M_DATA_* calls pass through 3 stages. Rename the send,
receive and deliver wrappers to names ending with 'start', 'receive' and
'finalize', respectively. This should make it clearer for dummies. |
|
2676 |
6071 d 13 h |
jermar |
/trunk/ |
Simplify the IPC_M_DATA_WRITE protocol. Do not pass the source address space
virtual address to the recipient. This feature was not used anyway. Now
IPC_M_DATA_WRITE and IPC_M_DATA_READ are feature-aligned. |
|
2673 |
6072 d 2 h |
jermar |
/trunk/uspace/srv/fs/tmpfs/ |
Rename variable from 'size' to 'len'. |
|
2667 |
6076 d 22 h |
jermar |
/trunk/uspace/srv/fs/tmpfs/ |
The previous commit was not entirely sane.
Handle VFS_WRITE correctly when the file doesn't grow.
Handle it correctly also when the file grows. |
|
2666 |
6077 d 3 h |
jermar |
/trunk/uspace/srv/ |
VFS and TMPFS support for VFS_WRITE. |
|
2664 |
6079 d 1 h |
jermar |
/trunk/uspace/srv/fs/tmpfs/ |
Fix two bugs in TMPFS-side VFS_READ. |
|
2663 |
6079 d 1 h |
jermar |
/trunk/uspace/ |
Reimplement VFS_READ using IPC_M_DATA_READ. |
|
2658 |
6080 d 0 h |
jermar |
/trunk/uspace/srv/ |
VFS work.
Foundation for TMPFS-side VFS_READ and fixes in VFS-side VFS_READ. |
|
2655 |
6083 d 6 h |
jermar |
/trunk/uspace/srv/fs/tmpfs/ |
TMPFS work.
VFS_LOOKUP implemented. |
|
2645 |
6086 d 6 h |
jermar |
/trunk/uspace/ |
Start TMPFS.
Not loaded during boot as there is a reproducible kernel panic which occurs when
both tmpfs and fat are loaded. |
|
2644 |
6086 d 6 h |
jermar |
/trunk/uspace/ |
Move incomplete fs interface from fat.h to libfs. |
|
2643 |
6086 d 7 h |
jermar |
/trunk/uspace/ |
VFS work.
Move FS registration code to libfs. |
|
2639 |
6097 d 0 h |
jermar |
/trunk/uspace/srv/fs/fat/ |
FAT work.
Foundation for FAT dentry comparison function.
Beware of looking at the diff or risk loosing sanity. |
|
2638 |
6098 d 3 h |
jermar |
/trunk/ |
Sync IPC comments with IPC code. |
|
2637 |
6098 d 3 h |
cejka |
/trunk/ |
Extended IPC_M_CONNECT_TO_ME to use 3 user defined parameters.
Phone identifier is passed in ARG5. |
|
2635 |
6100 d 3 h |
cejka |
/trunk/ |
Function ipc_connect_me_to sends 3 user defined arguments now.
One argument added also to ipc_forward_fast.
Fixed devmap and improved its test. |
|
2629 |
6107 d 2 h |
jermar |
/trunk/uspace/srv/fs/fat/ |
FAT work.
Add type describing FAT directory entry. |
|
2628 |
6107 d 2 h |
jermar |
/trunk/uspace/srv/fs/fat/ |
FAT work.
Add type describing FAT boot sector. |
|
2627 |
6107 d 4 h |
jermar |
/trunk/uspace/srv/fs/fat/ |
FAT work.
Start VFS_LOOKUP support in FAT. |
|
2619 |
6112 d 2 h |
jermar |
/trunk/ |
Modify ipc_answer_*() to make use of all six syscall arguments. The recommended
means of answering calls is via the ipc_answer_m() macros (where m denotes the
number of return arguments) that automatically decide between the fast register
version or the slow universal version of ipc_answer(). |
|
2615 |
6113 d 11 h |
jermar |
/trunk/ |
Modify synchronous IPC to make use of all six syscall arguments. The preferred
means of synchronous communication is now via the set of ipc_call_sync_m_n()
macros, where m is the number of payload arguments passed to the kernel and n is
the number of return values. These macros will automatically decide between the
fast and the universal slow version of ipc_call_sync. |
|
2588 |
6129 d 8 h |
jermar |
/trunk/uspace/ |
Add ipc_answer_fast_[01] macros so that ipc_answer_fast() users don't have to
write zero arguments all the time. |
|
2568 |
6160 d 16 h |
jermar |
/trunk/uspace/ |
Rename fibril_schedule_next_adv() to fibril_switch(). Rename
fibril_schedule_next() to fibril_yield(). Some fibril structures could be
uninitialized, set them to zero in fibril_setup(). For some fibrils, the stack
member can be NULL (e.g. every thread's first/main fibril); don't do free on
these stacks when cleaning up after a dead fibril. |
|
2546 |
6165 d 13 h |
jermar |
/trunk/uspace/srv/ |
VFS work.
Upon FS registration via VFS_REGISTER, the client is assigned a unique file
system handle. When generating the VFS_LOOKUP request in VFS, we also need to
pass the device handle. Add function to transform file system handle to phone.
Implement basic multi-call VFS request serialization on VFS side. |
|
2543 |
6166 d 8 h |
jermar |
/trunk/uspace/srv/ |
VFS work.
Modify the protocol so that VFS and FAT (or any other FS) have to share the Path
Lookup Buffer in read-only mode. |
|
2536 |
6171 d 3 h |
jermar |
/trunk/uspace/srv/ |
VFS work.
Describe the bottleneck of one VFS-FS connection in fat.c. Add a comment
outlining possible approaches.
Also in fat.c, the async_create_manager() _must_ be called as well as
async_set_client_connection(). The latter alows VFS to duplicate the connection.
Modify fat_connection() to ACK all IPC_M_CONNECT_ME_TO calls. |
|
2534 |
6173 d 7 h |
jermar |
/trunk/uspace/ |
In async_new_connection(), be more robust in the case that the function
is called by the server directly after its client accepts the
IPC_M_CONNECT_TO_ME call.
In fat.c main(), kill the "main" fibril and switch to the connection
fibril. |
|