Commit Graph

21 Commits

Author SHA1 Message Date
Axel Dörfler
97e069713b Added a "reenter" parameter to the {read|write}_pages() functions to give file
systems a chance to know if they have locked already.
This fixes a locking problem in BFS where one thread tried to acquire two read
locks (where someone else trying to acquire a write lock would have caused a
dead lock).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 13:34:04 +00:00
Axel Dörfler
47f39c93cb Merged the disk device manager module interface for file systems with the
VFS's interface, so that a file system only has to implement one interface.
As a side effect, the automatic file system detection may now work (not yet
tested, though).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-23 17:15:56 +00:00
Axel Dörfler
219dacab3c Changed our read link syscall and FS interface call to make it easily possible to be POSIX compliant.
Also changed readlink() to be POSIX compliant with those changes.
"ls -l" does now resolve links properly again (the new coreutils version outlined the problems).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-06 16:07:10 +00:00
Ingo Weinhold
cbc6d404f9 Added missing select()/deselect() Hooks to the file system interface
and made sure they are called by the VFS, if existent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-17 21:04:25 +00:00
Axel Dörfler
bade75a525 Added prototype for the new function publish_vnode().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11718 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-14 01:07:19 +00:00
Ingo Weinhold
98f9f2bf07 Added parameters to notify_{stat,attribute}_change() that will give more information on what actually happened.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 15:17:54 +00:00
Ingo Weinhold
5207cc7a8c Proposal for a replacement of the notify_listener() and
send_notification() interface, which I personally find quite ugly.
Each notification type gets its own function, which makes very clear,
which parameters are to be supplied. Also note the addition of the
`name' parameter for the `entry removed' notification and `fromName'
for `entry moved'.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 01:53:37 +00:00
Axel Dörfler
58e12c8d52 Changed fs_mount() function: "args" is now const char instead of void,
added flags parameter (for example for B_MOUNT_READ_ONLY).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9939 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-12 17:02:55 +00:00
Axel Dörfler
4ee37a6c5c fs_read_link() returns status_t, not ssize_t anymore (ie. the size of the
link is not returned anymore).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9651 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-29 13:06:16 +00:00
Axel Dörfler
752c2e981e The set_flags() call was missing from the FS interface.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-05 13:22:00 +00:00
Ingo Weinhold
be4e2191b1 Added small note.
BTW shouldn't those constants have the B_ prefix now that they are in a
public header?


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-02 16:14:38 +00:00
Axel Dörfler
8384cc5c92 Moved the select stuff into its own header file for now which is now included
from both, Drivers.h, and fs_interface.h.
The latter no longer includes vfs_types.h for iovecs, but <sys/uio.h> for iovec.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-01 00:28:57 +00:00
Axel Dörfler
ba84415a02 Added a "cookie" parameter to the fs_read|write|has_page[s]().
Changed the fs_get_file_map() call a bit - the requested file offset and size
were missing.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-06 21:54:57 +00:00
Axel Dörfler
7af4ca8acf Changed the VM hooks a bit to better match the corresponding driver hooks.
Added file cache hook function that gets the extents of a file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-04 17:13:45 +00:00
Axel Dörfler
61b8f5f2a7 Fixed some return types.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8255 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-02 00:40:39 +00:00
Axel Dörfler
34c763c98f File systems are modules now.
Added prototype for unremove_vnode(), some other minor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7805 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-07 17:14:17 +00:00
Axel Dörfler
d0da374bc3 Moved the public fs functions from vfs.h to this file.
Renamed them to match other exported BeOS functions as well (removed the vfs_ prefix).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7801 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-07 14:23:48 +00:00
shatty
80a9c4f4c3 include OS.h directly from fs_interface.h in prep for removal from sys/stat.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 08:33:05 +00:00
Axel Dörfler
136805bc6a The C++ "C" export now contains the send_notification() and notify_listener()
prototypes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-27 02:24:02 +00:00
Axel Dörfler
6d16fb1d30 Added some file system private function prototypes (for node monitoring/live queries).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-18 14:05:58 +00:00
Axel Dörfler
8f0cd8cdee Added header for node monitor calls for kernel add-ons.
Moved fs_interface.h to this location.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-17 17:52:33 +00:00