History log of /haiku/src/add-ons/kernel/file_systems/userlandfs/server/beos/BeOSKernelFileSystem.cpp
Revision Date Author Comments
# 69cd702b 19-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Pass the file system name to the FileSystem base class and store it there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29610 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


# 2f8d0984 01-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

BeOSKernelVolume didn't initialize the fCapabilities base class member.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29376 a95241bf-73f2-0310-859d-f6bbb57e9c96


# afd26550 28-Feb-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Moved the creation and initialization of the FileSystem subclass instance
into the FS interface specific libraries, thus making the server completely
independent of those.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 25c4a958 28-Feb-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Renamed files (removed "beos_" prefix).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29355 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 35d56691 28-Feb-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Adjusted to interface changes in the server. Should be working save for the
stubbed new_vnode().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29353 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


# 69cd702b39187815d61ca260bb08df759f2f352e 19-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Pass the file system name to the FileSystem base class and store it there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29610 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


# 2f8d0984b4fdfc5ced58af1215c789478771da53 01-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

BeOSKernelVolume didn't initialize the fCapabilities base class member.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29376 a95241bf-73f2-0310-859d-f6bbb57e9c96


# afd265501f5ac62180bf70e3529c29bf16a52f56 28-Feb-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Moved the creation and initialization of the FileSystem subclass instance
into the FS interface specific libraries, thus making the server completely
independent of those.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 25c4a958a2c785ab00fb6c3bff6605c55fcc25ad 28-Feb-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Renamed files (removed "beos_" prefix).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29355 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 35d56691a2b6005ee2b21cc33b944df83e6d2162 28-Feb-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Adjusted to interface changes in the server. Should be working save for the
stubbed new_vnode().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29353 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