#
711e2dc0 |
|
01-Dec-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
Adjust all struct dirent creations (again), this time to use offsetof(). The dirent struct is not packed, so offsetof(dirent, d_name) != sizeof(dirent). Thus in order not to waste the alignment bytes (which are significant, on x86_64 at least, sizeof(dirent)==32, but offsetof(...)=26.) This is also the most portable way to handle things, and should work just fine in cross-platform code that has a non-zero-sized d_name.
|
#
6f7fc220 |
|
07-Mar-2016 |
Axel Dörfler <axeld@pinc-software.de> |
NodeMonitor: Added B_WATCH_CHILDREN flag. * Added a directory argument for notify_{stat/attribute}_changed(). * This allows to watch only a directory, and get the notifications for all of its files, not just add/remove entry notifications.
|
#
88499de1 |
|
29-Apr-2013 |
Jérôme Duval <jerome.duval@gmail.com> |
attribute_overlay: fixed a warning. * warning about comparison between signed and unsigned integer expressions.
|
#
d63f4274 |
|
18-Oct-2010 |
Jérôme Duval <korli@users.berlios.de> |
added a file system call preallocate() as described in #6285, currently unused git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39006 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1e2c72fc |
|
29-Aug-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* FindAttribute() was broken and would find partial names (ie. if an attribute with the name "abc" existed, it would be returned when opening any attribute starting with "abc". git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38432 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
001d7548 |
|
29-Aug-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* Style cleanup, no functional change. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38430 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9d570af7 |
|
24-May-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Changed the type of the "op" parameter of the fs_vnode_ops::ioctl() hook and the _kern_ioctl() syscall from ulong to uint32. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36927 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
40fa690b |
|
19-Jan-2010 |
Michael Lotz <mmlr@mlotz.ch> |
The vnode->private_node holds our object, not vnode itself. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35191 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
271b9ad4 |
|
01-Sep-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Enable the IO hook for both attribute and write overlay. Attribute overlay isn't concerned by it as it does not do file data, it simply passes the hook through. In the write_overlay case we check for write operations and for modified nodes. In both cases we return B_NOT_SUPPORTED which will cause a fallback to synchronous IO. The main problem with the fallback is not that it is synchronous but that the physical buffers of the request will be mapped and filled page wise, which makes it slow for various reasons. In any case with this setup all reads to write_overlay that can go through unmodified now do. This should speed up CD boot as there is no physical to virtual translation overhead and no limit to page wise reads. In the best case it should now read 256 blocks at the time instead of always falling back to 2. My tests show no side effects on creating, writing or partially modifying nodes so far. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32897 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
940e8add |
|
28-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Apply r30895 and r30897 to the attribute_overlay as well. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30898 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2cdc24e4 |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Fix two instances of handing wrong vnodes to the next layer in attribute_overlay. The target vnode in link and the toDir vnode in rename were passed directly, meaning that an attribute_overlay vnode was handed to the next layer causing crashes when moving/renaming a file on ISO-only CDs for example. Fixes #3885. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30893 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2fc5fcd1 |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Add missing put_vnode() in error case. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30890 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4251f056 |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
When writing an attribute store file the parent directory might have been invalidated since the creation of the object. If this is the case we have to look it up again. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30889 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
06359766 |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Invalidate our cached inode numbers when removing the attribute file. Basically we want to ensure that we re-enumerate our environment when eventually writing a new one as it has most probably changed. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30888 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
dfada888 |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Add functionality for removing a attribute file. In case a file is (re-)moved we will later remove the attribute backing file using this. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30887 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3cf43c26 |
|
25-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the fs_vnode_ops::create_dir() parameter for returning the ID of the newly created dir. The VFS really doesn't need it and for some file systems it might not be easy to get by. Several file systems (e.g. rootfs and fat) were ignoring the parameter anyway. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29719 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9c67a177 |
|
19-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
No need to relay the attribute calls. Fixes attribute overlays when used with another layer. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29258 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4ef49450 |
|
19-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Rename the trace output as well. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29256 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
af4245f8 |
|
19-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Split overlay filesystem into attribute_overlay and write_overlay. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29255 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
77fdecfe |
|
19-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Preparing to split the overlay filesystem into an attribute_overlay and write_overlay module. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29253 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
88499de19083878db3cf4f5a7acd4e75e71bf255 |
|
29-Apr-2013 |
Jérôme Duval <jerome.duval@gmail.com> |
attribute_overlay: fixed a warning. * warning about comparison between signed and unsigned integer expressions.
|
#
d63f4274b665d32065f24a7a01a025578c8a43c9 |
|
18-Oct-2010 |
Jérôme Duval <korli@users.berlios.de> |
added a file system call preallocate() as described in #6285, currently unused git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39006 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1e2c72fcfc16119a7db98020316646204bb3e35d |
|
29-Aug-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* FindAttribute() was broken and would find partial names (ie. if an attribute with the name "abc" existed, it would be returned when opening any attribute starting with "abc". git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38432 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
001d7548ab93e77d995eef249fac1ab1818a9a79 |
|
29-Aug-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* Style cleanup, no functional change. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38430 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9d570af7c878ba30043b23e6dce5f3ae5578aa7c |
|
24-May-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Changed the type of the "op" parameter of the fs_vnode_ops::ioctl() hook and the _kern_ioctl() syscall from ulong to uint32. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36927 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
40fa690b518b2a837dd3e5eb81d9142d33da2615 |
|
19-Jan-2010 |
Michael Lotz <mmlr@mlotz.ch> |
The vnode->private_node holds our object, not vnode itself. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35191 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
271b9ad49ac034af9e979d020a048476a9fecbd4 |
|
01-Sep-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Enable the IO hook for both attribute and write overlay. Attribute overlay isn't concerned by it as it does not do file data, it simply passes the hook through. In the write_overlay case we check for write operations and for modified nodes. In both cases we return B_NOT_SUPPORTED which will cause a fallback to synchronous IO. The main problem with the fallback is not that it is synchronous but that the physical buffers of the request will be mapped and filled page wise, which makes it slow for various reasons. In any case with this setup all reads to write_overlay that can go through unmodified now do. This should speed up CD boot as there is no physical to virtual translation overhead and no limit to page wise reads. In the best case it should now read 256 blocks at the time instead of always falling back to 2. My tests show no side effects on creating, writing or partially modifying nodes so far. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32897 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
940e8add935c54af562b6a5474cfb33026a7bbef |
|
28-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Apply r30895 and r30897 to the attribute_overlay as well. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30898 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2cdc24e4ad4d36d08c4d3ea54600823655aeab9c |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Fix two instances of handing wrong vnodes to the next layer in attribute_overlay. The target vnode in link and the toDir vnode in rename were passed directly, meaning that an attribute_overlay vnode was handed to the next layer causing crashes when moving/renaming a file on ISO-only CDs for example. Fixes #3885. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30893 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2fc5fcd1ad3f16ca5277fd124e62886f5c7bfc1f |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Add missing put_vnode() in error case. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30890 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4251f05625ca44b4575584208d95741d77128f2f |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
When writing an attribute store file the parent directory might have been invalidated since the creation of the object. If this is the case we have to look it up again. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30889 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
063597660675ef225be219b1159e7f7b6c1f81f7 |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Invalidate our cached inode numbers when removing the attribute file. Basically we want to ensure that we re-enumerate our environment when eventually writing a new one as it has most probably changed. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30888 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
dfada888409f48cc036dacc0c1283cab3d7e1138 |
|
27-May-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Add functionality for removing a attribute file. In case a file is (re-)moved we will later remove the attribute backing file using this. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30887 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3cf43c26516b695e35b7433196a530f7541c4ca8 |
|
25-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the fs_vnode_ops::create_dir() parameter for returning the ID of the newly created dir. The VFS really doesn't need it and for some file systems it might not be easy to get by. Several file systems (e.g. rootfs and fat) were ignoring the parameter anyway. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29719 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9c67a177a883e5a6ac87770aa8dd3f68253bbb72 |
|
19-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
No need to relay the attribute calls. Fixes attribute overlays when used with another layer. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29258 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4ef49450014054078584cd4d05f35316c3199efa |
|
19-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Rename the trace output as well. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29256 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
af4245f8a34f087dda1bec13a54846116f1f8250 |
|
19-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Split overlay filesystem into attribute_overlay and write_overlay. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29255 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
77fdecfec83f0d2878594fbdde5510405033fff0 |
|
19-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Preparing to split the overlay filesystem into an attribute_overlay and write_overlay module. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29253 a95241bf-73f2-0310-859d-f6bbb57e9c96
|