#
539ec8ff |
|
22-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* File::_UpdateLevelInfos(): Fixed child count computation. Was incorrect (0) for multiple of kFileBlockMaxCount block counts. * File::_GrowTree(): The inner loop of the level addition part was bogus. Apparently I never tested with files >= 2 MB before. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37683 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8f6bf756 |
|
21-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Resize(): Resize the file cache before trying to fill the added space with zeroes. * Compute and propagate the check sums of the written file data to the underlying device. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37641 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0f9dda9f |
|
20-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Moved Block implementation to its own source file. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37633 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8794d8c4 |
|
20-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Volume::Create{File,Directory,SymLink}(): - Simplified by using the new common _CreateNode(). Changed the constructors slightly -- the block index is now set via a separate SetBlockIndex() method. - The block allocated for the node was not cleared. At least for directories that is required, though. * Added attribute support: - Refactored/extended {open,create}_file() and DirCookie a bit, so they can also be used for attributes/attribute directories. - Implemented all relevant attribute FS hooks. - Node::DeletingNode(): Changed interface (it creates the transaction(s) as needed, now and doesn't return the error code anymore. The base class implementation frees the attribute directory, the Directory implementation also unlinks all entries and frees the entry tree. * checksumfs_write_stat(): B_STAT_MODE was not handled. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37626 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e8282312 |
|
19-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added node monitoring support. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37601 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4b53c2ba |
|
19-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Implemented hooks write_fs_info(), sync(), set_flags(), fsync(), access(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37595 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5b3d7898 |
|
18-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
File::GetFileVecs(): * Added debug output. * Rounding up the size argument could cause an overflow. Use uint64 and block indexes, now. * The iteration index wasn't incremented in the main loop. * The in-block index was ignored when filling the first vector. Shouldn't really matter since we pass back complete blocks only, so the file map should never supply an unaligned offset, but anyway. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37573 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
87c30de7 |
|
13-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Added a File class for representing regular files. We use a simple block tree for the data management. Reading/writing (using file cache and file map) is implemented, but not exactly well tested yet. * Renamed SymLink::{Read,Write}() to {Read,Write}SymLink(). * Implemented FS hooks write_stat(), create(), read(), write(), io(). * Added O_TRUNC support to open() hook. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37507 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
539ec8ff1e62c970b91a4260cad0067234f04848 |
|
22-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* File::_UpdateLevelInfos(): Fixed child count computation. Was incorrect (0) for multiple of kFileBlockMaxCount block counts. * File::_GrowTree(): The inner loop of the level addition part was bogus. Apparently I never tested with files >= 2 MB before. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37683 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8f6bf75670b771eaed5b82c6b90829e950aef3d6 |
|
21-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Resize(): Resize the file cache before trying to fill the added space with zeroes. * Compute and propagate the check sums of the written file data to the underlying device. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37641 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0f9dda9f00200c24373c4e90911605e013d42afb |
|
20-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Moved Block implementation to its own source file. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37633 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8794d8c48f3c595cf42a9ae36fe661e38c019f34 |
|
20-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Volume::Create{File,Directory,SymLink}(): - Simplified by using the new common _CreateNode(). Changed the constructors slightly -- the block index is now set via a separate SetBlockIndex() method. - The block allocated for the node was not cleared. At least for directories that is required, though. * Added attribute support: - Refactored/extended {open,create}_file() and DirCookie a bit, so they can also be used for attributes/attribute directories. - Implemented all relevant attribute FS hooks. - Node::DeletingNode(): Changed interface (it creates the transaction(s) as needed, now and doesn't return the error code anymore. The base class implementation frees the attribute directory, the Directory implementation also unlinks all entries and frees the entry tree. * checksumfs_write_stat(): B_STAT_MODE was not handled. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37626 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e828231248036363167313f7cad872c2bb5676e4 |
|
19-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added node monitoring support. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37601 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4b53c2ba4f0b774030e369fc2ec522309b12d1f7 |
|
19-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Implemented hooks write_fs_info(), sync(), set_flags(), fsync(), access(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37595 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5b3d789879bdcb4e7abc58d8f43726722ab6b2a9 |
|
18-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
File::GetFileVecs(): * Added debug output. * Rounding up the size argument could cause an overflow. Use uint64 and block indexes, now. * The iteration index wasn't incremented in the main loop. * The in-block index was ignored when filling the first vector. Shouldn't really matter since we pass back complete blocks only, so the file map should never supply an unaligned offset, but anyway. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37573 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
87c30de7897d6a056d56edeb149e4d04b70db7be |
|
13-Jul-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Added a File class for representing regular files. We use a simple block tree for the data management. Reading/writing (using file cache and file map) is implemented, but not exactly well tested yet. * Renamed SymLink::{Read,Write}() to {Read,Write}SymLink(). * Implemented FS hooks write_stat(), create(), read(), write(), io(). * Added O_TRUNC support to open() hook. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37507 a95241bf-73f2-0310-859d-f6bbb57e9c96
|