Commit Graph

3303 Commits

Author SHA1 Message Date
Tyler Dauwalder e4edcddbc5 Fixed nothrow declaration and definition to what I think should
be the proper values.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 07:35:04 +00:00
Axel Dörfler a9aa5ee181 Implemented bfs_setflags().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:56:24 +00:00
Axel Dörfler a13beecdee Removed the possibility to create a Semaphore object without specifying
a name - that's mostly done to:
1) force better fitting lock names
2) make the API consistent (the empty ReadWriteLock constructor doesn't
   initialize the lock anymore).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:34:18 +00:00
Axel Dörfler 20c74d7d25 Fixed reordering of initializer warning - should compile the fs_shell with
-Wall enabled...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:32:40 +00:00
Axel Dörfler ae58716024 Fixed another bad bug caused by calling get_vnode() on a node currently
being constructed: bfs_read_node() created an Inode object independent from
the one set in new_vnode().
As a work-around (the new VFS layer will introduce some better methods here)
we are now using the bfs_inode.etc field as a pointer to our object - just
like BFS has thought to use this field. If bfs_read_vnode() has to wait for
the inode (because it is being constructed), it will use the "etc" pointer
and don't create it's own Inode object.
Almost all changes made change the API to take this case into account:
- new Inode constructor to be able to be created from a CachedBlock
- CachedBlock now has a Keep() method which suppresses the release_block()
  call when the object is destructed.
- a CachedBlock can now be constructed from the contents of another one (by
  calling the source's Keep() method).
- Inode::InitCheck() no longer checks the integrity of the bfs_inode - this
  is now done by bfs_inode::InitCheck() which is optionally called by the
  former (default).
- moved the inline CachedBlock methods out of the class definition (was
  too crowded to be readable).
- new Inode::Initialize() which is called by all Inode constructors
- an Inode object now sets a better name for its read/write lock.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:27:27 +00:00
Axel Dörfler 1d9fd63d3a The ReadWriteLock class now has an Initialize() method to initialize the
object after creation. This enables the Inode constructor to set a better
name for the lock.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:12:38 +00:00
Axel Dörfler 24d6529a93 Journal::LogBlocks() now calls cache_write() if the block is already in the
log entry - this is only necessary if the buffer is not the one of the
CachedBlock object.
Journal::TransactionDone() now properly aborts transactions if possible,
instead of just writing them to disk (does only work if the log entry
was not used by other transactions already).
Added a comment about how to speed up writing the log entries a bit more
(though it's not so easy to do, and might not be much faster).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:10:22 +00:00
Axel Dörfler 6c66b99b6b The fs-shell kernel's PANIC() now calls the userland debugger.
Fixed a wrong printf argument (block number is %Ld) in release_block().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:04:53 +00:00
Ingo Weinhold 5c35d41aab AddResources must precede the rule for building the target.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 15:20:14 +00:00
Tyler Dauwalder 968997db5f new(nothrow) is desired by SLList. My definition of nothrow is
a bit sketchy here, but will work for now until I figure out the
proper way to do it.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 08:25:15 +00:00
Tyler Dauwalder c6b0bb0480 Missed a #include <stdio.h>
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 08:23:59 +00:00
Tyler Dauwalder 9b6661b079 Added PartitionMap.cpp to the build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 08:10:56 +00:00
Tyler Dauwalder 0d383564c3 - Added beginnings of volume descriptor sequence walking code.
- Accounted for addition of "udf_" to beginning of on-disk structs.
- Accounted for Block<typename> to MemoryChunk change


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 08:06:43 +00:00
Tyler Dauwalder 81d91d069a Added DUMP() and PDUMP() macros.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 08:04:28 +00:00
Tyler Dauwalder 56f47960a3 - Prepended each struct name with "udf_" to clarify which structs are actually
on-disk data structures.
- More endian-neutrality conversions
- More dump() functions


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 08:03:47 +00:00
Tyler Dauwalder 8a079cf89c Initial checkin. Provides mapping of partition numbers to udf_partition_descriptors.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3353 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 08:01:52 +00:00
Tyler Dauwalder 15eec8a161 Single-linked list courtesy Mr. Ingo Weinhold, here temporarily
until we get our kernel C++ utils library up and running.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 08:01:08 +00:00
Tyler Dauwalder 4627317bcd Initial checkin.
Slightly more typesafe static array type than built-in arrays,
with array length information stored implicitly (i.e. consuming no
physical space in the actual struct) via the arrayLength template
parameter.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3351 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 07:58:08 +00:00
Tyler Dauwalder 4873cabb06 Renamed Block to MemoryChunk, and got rid of the template
parameter in lieu of using reinterpret_cast, which turns out to
be cleaner all in all.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3350 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 07:57:02 +00:00
Matthew Wilber b17c6f4bc0 added BApplication object to TranslationTest so that the call to system_colors() in TGATranslator would succeed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 00:48:53 +00:00
Matthew Wilber fe2aacfad7 added BApplication object so that the system_colors() function call in BMPTranslator code would succeed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3348 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 00:48:00 +00:00
Matthew Wilber 8ec8ccef8e added constructor test where bitmap is passed, changed to use typedef when added tests to the suite to clean things up
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-27 00:30:11 +00:00
Axel Dörfler a476bfc5b1 Now waits for a whole second on the inode to become unbusy - just in case
there is a slow drive. Note, if the system is heavily used and the thread
waiting for the inode to become unbusy is a real time thread, that time
might be not enough - don't have a better solution at hand though (other
than waiting even longer).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 22:40:14 +00:00
Axel Dörfler 3cfd8472f9 Fixed the ominous "new_vnode() already exists with different cookie" bug,
thanks to Bruno for pointing me in the right direction (that has probably cost
him several hours of his life ;-))!
Yes, it was that complicated to fix it...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 22:36:23 +00:00
Matthew Wilber 96a13ed121 added checking for memory allocation failure in MakeConfigurationView
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 18:07:29 +00:00
Matthew Wilber d7be1587b7 initial check in for stxtinfo, a command line program to display information about Be styled text data
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 17:55:27 +00:00
Matthew Wilber 8ceceb19ed added stxtinfo
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 17:53:26 +00:00
beveloper 8394328625 lots of boring comparisons
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 14:44:28 +00:00
Matthew Wilber fd6e40cd0e added GetConfigurationMessage test and removed an entry for a test file that doesn't exist
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 14:38:27 +00:00
beveloper 21871f384e various bugfixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 12:58:06 +00:00
beveloper a4289a95c0 fixed initialization, added debug macros
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 12:37:52 +00:00
beveloper 5b4256ce42 removed debugging code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3337 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 12:37:05 +00:00
Matthew Wilber bedcc99335 added GetConfigurationMessage test
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 03:26:49 +00:00
Axel Dörfler b807dfb5b1 Updated the help text for "startquery" & "stopquery" to match reality better.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 02:19:06 +00:00
Axel Dörfler 6e14268838 The kernel now has support for setting port&token of a query.
The fs_shell is now able to start up to 10 concurrent live queries. Use
"stopquery" to stop them all or just one of them, "startquery" to initiate
one, and "lsquery" to display them all.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 02:16:54 +00:00
Axel Dörfler b0ff9520c0 The Jamfile now compiles with -fcheck-memory if MALLOC_DEBUG is set. Of course,
jam itself will also be checked then, which cries out loud for a better way to
do this. But hey, it works :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 02:14:03 +00:00
Axel Dörfler 470a60786e Updated the ToDo list; thanks to Ingo I know now a little bit more about
float/double queries :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:51:19 +00:00
Axel Dörfler 6ac535c5c5 Fixed another bad bug in the block allocator: the size of the last block
of the block bitmap could be computed wrong - this could cause all sorts
of errors like: overwriting data, creating the "new_vnode with different
cookie" problem, etc.
Should really be the last bug in that piece of code ;-P


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:50:34 +00:00
Axel Dörfler e1d37632bb Now takes changed function of Index::Update() into account - queries on
non-indexed attributes now finally work as they should.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:47:06 +00:00
Axel Dörfler ab47860c37 Index::SetTo() now sets fName even if the index initialization failed (for
whatever reason).
Index::Update() is now allowed to be called for those indices - in this case
it will just update all live queries.
Added some comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:45:09 +00:00
Axel Dörfler 09ed3db89a Some minor style changes/clean ups.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:43:14 +00:00
ejakowatz 18a8d114f5 Tests for BString convenience functions, plus a fix to BMessageField for a
bug revealed by those tests.  Gotta love those unit tests!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 01:12:23 +00:00
Philippe Houdoin 1a3b3db436 Fix some typo in BUILD note.
Update headers to reflect the net_data* -> net_buffer* move


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 00:34:13 +00:00
Philippe Houdoin 82238517b4 net_data -> net_buffer update.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 00:29:28 +00:00
Philippe Houdoin 5a52a89c28 net_data* -> net_buffer*
Remove some debug traces


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 00:27:18 +00:00
Philippe Houdoin 0a936c017d net_data* -> net_buffer*
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 00:23:37 +00:00
Philippe Houdoin d5b2863194 Rename net_data into net_buffer, which make more sense.
Add read_buffer() and write_buffer() to access/modify net_buffer data chunks.
Add a split_buffer() function, that will split at a specified offset. To be implemented.
Remove append_buffer(), prepend_buffer() and insert_buffer(), replace by all-purpose
add_to_buffer().
Rename remove_buffer() into remove_from_buffer(), to opposite add_to_buffer()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-26 00:22:39 +00:00
beveloper 4f09fa2ff1 various small bugfixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-25 23:59:16 +00:00
beveloper 359ac30644 Added automatic loading of physical input and output nodes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-25 21:16:53 +00:00
Axel Dörfler 917d37106e The startquery command now stops an eventually running query (which now
makes several live queries at once impossible :-).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-25 16:59:47 +00:00