wrong, but also completely senseless :-)
Renamed Partition::NextOffset() to LinkOffset() to honour that change.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4623 a95241bf-73f2-0310-859d-f6bbb57e9c96
seem to work in combination with "SimpleTest".
As I am too lazy to figure out what's causing this, I hope for Ingo :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4622 a95241bf-73f2-0310-859d-f6bbb57e9c96
partition modules won't complain about a disk too small to hold a partition.
Should be fixed, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4614 a95241bf-73f2-0310-859d-f6bbb57e9c96
Acquire()/Release() support as well.
New Directory base class.
Added basic support for file systems and the root file system, not yet
fully working (no path parsing yet), and not yet tested.
Implemented fstat().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4591 a95241bf-73f2-0310-859d-f6bbb57e9c96
Implemented recursive child content scanning.
Added support for file systems, and the root file system.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4589 a95241bf-73f2-0310-859d-f6bbb57e9c96
only the ones actually used are linked in, the local variable is no longer
used.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4588 a95241bf-73f2-0310-859d-f6bbb57e9c96
New Directory class for use in file systems; file systems need to publish
their root directory as a subclass of this class.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4587 a95241bf-73f2-0310-859d-f6bbb57e9c96
on disk to match to be able to find it, changed the ToDo: comment in the
affected function, and added a test call to vfs_get_module_name(); our
bootfs cannot handle the path depth/length required to be a useful module
host, so we still have our recursive search algorithm in place for now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4560 a95241bf-73f2-0310-859d-f6bbb57e9c96
of a given module name.
vnode_path_to_vnode() can now return the type of the file, changed the parameter
order.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4559 a95241bf-73f2-0310-859d-f6bbb57e9c96
Refactored the code a bit (moved the scan algorithm to the Partition class, ...).
Implemented get_parent_partition() and added a stub for get_child_partition()
as needed by the intel partition module.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4550 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added a comment about how to traverse the module path to find a given module -
could well be that we got that wrong (too loose, it will work perfectly, though,
just slower than it could be).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4516 a95241bf-73f2-0310-859d-f6bbb57e9c96
"sudden unmounts" (as far as that can work). This replaces the weak
find_mount() call used at several places in the fs index functions.
Fixed a bunch of warnings, mostly unused prototypes and variables.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4491 a95241bf-73f2-0310-859d-f6bbb57e9c96
#ifdef'd a variable that's only of use with TRACE() on.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4490 a95241bf-73f2-0310-859d-f6bbb57e9c96
parameter (else it falls back to the old behaviour, trying to open
/boot/home/tmp/test-file-device).
Also fixed the hackish busy loop to at least snooze() a bit (so that it
doesn't use all your CPU energy while debugging a partitioning module :-)).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4475 a95241bf-73f2-0310-859d-f6bbb57e9c96
although I might change this issue after having had a look at the PPC
compilation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4471 a95241bf-73f2-0310-859d-f6bbb57e9c96
code, since I made the problem causing changes on another machine...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4470 a95241bf-73f2-0310-859d-f6bbb57e9c96
Not yet complete, of course, but already scans amiga partitions :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4461 a95241bf-73f2-0310-859d-f6bbb57e9c96
atomic_test_and_set() to the OpenBeOS headers (prefixed BFS versions with '_').
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4446 a95241bf-73f2-0310-859d-f6bbb57e9c96
easier to check if the partitioning_system returns the correct size :-)).
Uses %f which doesn't work in the BeOS kernel (but might in OpenBeOS).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4445 a95241bf-73f2-0310-859d-f6bbb57e9c96
to get_next_partition().
If a wannabe partition fails its checksum test, all partitions that might come
later are now skipped. Added a ToDo item for what would be a nicer dealing with
such errors.
get_next_partition() and search_rdb() are now static.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4444 a95241bf-73f2-0310-859d-f6bbb57e9c96
is now tested for partition_blocks as well.
Makes use of the new endian-aware structure methods.
If a partition is out of bounds (starts or reaches beyond the available
disk space), it won't be registered anymore - not sure if that's sooo
desirable, though.
Removed some unneeded debug output.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4443 a95241bf-73f2-0310-859d-f6bbb57e9c96
the file path to be part of the module name (that's not the case for BeOS, is it?).
Also added some more debug output, and now only allocate a new rigid_disk_block
if we are going to need it.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4441 a95241bf-73f2-0310-859d-f6bbb57e9c96
this "shell" (the new DiskDeviceManager module API).
Hope for the best :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4440 a95241bf-73f2-0310-859d-f6bbb57e9c96
Now uses <span class="var"> instead of \p for variables in the text.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4389 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added the "week[s]" keyword to accept strings like "5 weeks", doesn't work
right yet in the "next/last week" case - that extra case should be added to
computeRelativeUnit().
Removed an unused variable.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4384 a95241bf-73f2-0310-859d-f6bbb57e9c96
and faster than the R5 code as far as I have checked it.
Refactored the source a bit, it's now much clearer: divided the heavily overloaded
type field into type/unit/flags.
Introduced some new methods to track everything we have to to provide a
useful date in hopefully all cases.
Now supports using a dash to mark negative values as well.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4376 a95241bf-73f2-0310-859d-f6bbb57e9c96
Reveals some bugs in the original parsedate() implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4375 a95241bf-73f2-0310-859d-f6bbb57e9c96
Mixed up comma/colon/semicolon in some stupid ways...
Fixed a bug that prevented weekday/month names to be matched correctly.
Temporarily enabled some debug output.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4369 a95241bf-73f2-0310-859d-f6bbb57e9c96
and set_dateformats().
It's not complete yet, but already quite useful.
Added a "d.m.y" to the R5 set of formats.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4367 a95241bf-73f2-0310-859d-f6bbb57e9c96
Reordered the syscalls a bit (in functional groups), not completely, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4354 a95241bf-73f2-0310-859d-f6bbb57e9c96