#
de48af7a |
|
14-Feb-2019 |
Augustin Cavalier <waddlesplash@gmail.com> |
Adapt all consumers of HashSet and HashMap to the slightly-different APIs. No functional changes intended. Tested and verified as working. Change-Id: Iaa67c2e5f0d9aff433ac7348e63e901a6a80e589 Reviewed-on: https://review.haiku-os.org/c/1043 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
3cf43c26 |
|
25-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the fs_vnode_ops::create_dir() parameter for returning the ID of the newly created dir. The VFS really doesn't need it and for some file systems it might not be easy to get by. Several file systems (e.g. rootfs and fat) were ignoring the parameter anyway. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29719 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7e6a04c7 |
|
19-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use the actual file system name. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29611 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
98092e98 |
|
18-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
gcc 4 fixes. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29602 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4649fe05 |
|
17-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Haiku kernel interface emulation: Retrieve the capabilities for each vnode. We do some caching using a hash table indexed by the operations vector. * Pass the vnode capabilities to the kernel module. * In the kernel tailor the operation vectors for volumes and vnodes passed to the VFS according to the respective capabilities. This way those vectors look pretty much like those from the client FS. This saves unnecessary calls when hooks are not implemented and should also fix compatibility problems in cases where not implementing a hook and returning an error don't mean the same to the VFS. * Inlined some of the kernel module Volume class getters. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29572 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c76e8d36 |
|
15-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Implemented forwarding the do_iterative_fd_io() callbacks to userland. * Pass the request offset and length with the DoIORequest. This allows us to already get the first vecs for do_iterative_fd_io() in userland, saving a trip back and forth. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29546 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
687e02f9 |
|
14-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Forward the io() and cancel_io() hooks. Implemented the missing kernel part. * Implemented a good part of the kernel part for the support of do_iterative_fd_io(). The forwarding of the callbacks are missing yet. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29540 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7c1ffcb9 |
|
13-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* The nature of asynchronous I/O is to be asynchronous. So we can't store an on-stack structure for the request in a hash table when forwarding the io() hook. Create a new object (HaikuKernelIORequest) instead and store it in a hash table in HaikuKernelFileSystem. * Some work on the userland side of do_iterative_fd_io(). * Added some missing requests in UserlandFSUtil::is_{kernel,userland}_request(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29505 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f1c6ce08 |
|
10-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Implemented the userland side for propagating the io() and cancel_io() hooks. * Implemented io_request_is_write(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29469 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
02f7a2f4 |
|
03-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Implemented vfs_get_file_map() and vfs_lookup_vnode(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29393 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c74777f3 |
|
03-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Finished node management. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29392 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3b8f138f |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the parent directory from the header directories again. Instead include the respective headers explicitly. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29352 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b7d815f1 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Stubbed the missing methods. The library links now at least. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29350 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
67cf3a62 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the file cache emulation and added implementation stubs for the file cache functions. We won't emulate the file cache in userland anymore, but forward the calls to the kernel. Besides that this will save quite a bit of emulation code, it will also make mmap()ing files on UserlandFS volumes possible. The drawback is that these calls will be slower. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29349 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a7b34687 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Reorganized the sources. Haiku and BeOS kernel interface each have their own subdirectory, now. * Moved all code specific to a kernel interface into the respective library. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29344 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3cf43c26516b695e35b7433196a530f7541c4ca8 |
|
25-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the fs_vnode_ops::create_dir() parameter for returning the ID of the newly created dir. The VFS really doesn't need it and for some file systems it might not be easy to get by. Several file systems (e.g. rootfs and fat) were ignoring the parameter anyway. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29719 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7e6a04c78e8ded10e8cf55c2d1434ab2bf5713d2 |
|
19-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use the actual file system name. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29611 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
98092e9867e46f572bde18ad17188779d2b3d1d1 |
|
18-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
gcc 4 fixes. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29602 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4649fe05ef03c9981231538121df35aab32f2bc0 |
|
17-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Haiku kernel interface emulation: Retrieve the capabilities for each vnode. We do some caching using a hash table indexed by the operations vector. * Pass the vnode capabilities to the kernel module. * In the kernel tailor the operation vectors for volumes and vnodes passed to the VFS according to the respective capabilities. This way those vectors look pretty much like those from the client FS. This saves unnecessary calls when hooks are not implemented and should also fix compatibility problems in cases where not implementing a hook and returning an error don't mean the same to the VFS. * Inlined some of the kernel module Volume class getters. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29572 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c76e8d36fb69fa88a01ff734f45523c36629af17 |
|
15-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Implemented forwarding the do_iterative_fd_io() callbacks to userland. * Pass the request offset and length with the DoIORequest. This allows us to already get the first vecs for do_iterative_fd_io() in userland, saving a trip back and forth. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29546 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
687e02f9457b4cf0a13495467d561f5c08d84868 |
|
14-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Forward the io() and cancel_io() hooks. Implemented the missing kernel part. * Implemented a good part of the kernel part for the support of do_iterative_fd_io(). The forwarding of the callbacks are missing yet. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29540 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7c1ffcb9ec70c1bb997a4ecb9a9af82d5a657297 |
|
13-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* The nature of asynchronous I/O is to be asynchronous. So we can't store an on-stack structure for the request in a hash table when forwarding the io() hook. Create a new object (HaikuKernelIORequest) instead and store it in a hash table in HaikuKernelFileSystem. * Some work on the userland side of do_iterative_fd_io(). * Added some missing requests in UserlandFSUtil::is_{kernel,userland}_request(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29505 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f1c6ce08f25483b1c3f0623e9f203b08222bf936 |
|
10-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Implemented the userland side for propagating the io() and cancel_io() hooks. * Implemented io_request_is_write(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29469 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
02f7a2f4cbfcde93d25ec826ba91b1ffafe78bf4 |
|
03-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Implemented vfs_get_file_map() and vfs_lookup_vnode(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29393 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c74777f3d3fcc7c0437ba6738f504f5551179fed |
|
03-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Finished node management. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29392 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3b8f138f436bac5f2e97e136f6ced24e23d8ae24 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the parent directory from the header directories again. Instead include the respective headers explicitly. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29352 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b7d815f1cd2c4ce197c5dc0a2d0246b9a89c4dd0 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Stubbed the missing methods. The library links now at least. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29350 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
67cf3a62b49362a086ab35930b86d0f6eeec7531 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the file cache emulation and added implementation stubs for the file cache functions. We won't emulate the file cache in userland anymore, but forward the calls to the kernel. Besides that this will save quite a bit of emulation code, it will also make mmap()ing files on UserlandFS volumes possible. The drawback is that these calls will be slower. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29349 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a7b346877023493472fc5c8ef0de99ed9043450f |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Reorganized the sources. Haiku and BeOS kernel interface each have their own subdirectory, now. * Moved all code specific to a kernel interface into the respective library. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29344 a95241bf-73f2-0310-859d-f6bbb57e9c96
|