3313 Commits

Author SHA1 Message Date
Tyler Dauwalder
5b3f1d0cda DiskDevice API v2.4
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3378 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3378
2003-05-28 21:51:24 +00:00
Tyler Dauwalder
e62a550aa1 Removed as of DiskDevice API v2.4
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3377 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3377
2003-05-28 21:49:24 +00:00
Tyler Dauwalder
9f4ec30369 DiskDevice API v2.3.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3376 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3376
2003-05-28 21:47:29 +00:00
Tyler Dauwalder
17dc6e0c84 DiskDevice API v2.2.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3375 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3375
2003-05-28 21:46:11 +00:00
Tyler Dauwalder
40f3824020 DiskDevice API v2.0
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3374 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3374
2003-05-28 21:43:58 +00:00
Tyler Dauwalder
800e59617f Removed as of v2.0 of the DiskDevice API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3373 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3373
2003-05-28 21:41:28 +00:00
Tyler Dauwalder
fc14e78461 DiskDeviceAPI Protocols v2.3
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3372 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3372
2003-05-28 21:40:29 +00:00
Tyler Dauwalder
4ca811957a DiskDeviceAPI Protocols v2.0
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3371 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3371
2003-05-28 21:39:56 +00:00
ejakowatz
c48aa159a5 Minor tweaks to try and get the remote object stuff working again.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3370 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3370
2003-05-28 20:24:29 +00:00
ejakowatz
159d60f9fb Unit tests for plain C string convenience functions. Tweaks elsewhere to
deal with necessary modifications to test core.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3369 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev3369
2003-05-28 20:19:35 +00:00
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
hrev3368
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
hrev3367
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
hrev3366
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
hrev3365
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
hrev3364
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
hrev3363
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
hrev3362
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
hrev3361
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
hrev3360
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
hrev3359
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
hrev3358
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
hrev3357
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
hrev3356
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
hrev3355
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
hrev3354
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
hrev3353
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
hrev3352
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
hrev3351
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
hrev3350
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
hrev3349
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
hrev3348
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
hrev3347
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
hrev3346
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
hrev3345
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
hrev3344
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
hrev3343
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
hrev3342
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
hrev3341
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
hrev3340
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
hrev3339
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
hrev3338
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
hrev3337
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
hrev3336
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
hrev3335
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
hrev3334
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
hrev3333
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
hrev3332
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
hrev3331
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
hrev3330
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
hrev3329
2003-05-26 01:45:09 +00:00